1个不稳定版本
0.0.1 | 2022年3月20日 |
---|
#364 in #experimental
4.5MB
144 行
sql.js-httpvfs-rs
一个非常实验性、基础且听起来有点荒谬的Rust封装,围绕sql.js-httpvfs,用于WASM Web应用程序等。
注意:目前这不是用于任何严肃或生产用途的,只是一个快速使用wasm-bindgen调用的Rust应用程序的绑定,主要是一个实验,看看什么可能可行。
用法
将crate添加到您的Cargo.toml
文件中,如下所示
[dependencies]
sql-js-httpvfs-rs = "0.0.1"
然后,在您的Rust代码中,您可以使用如下方式创建一个worker
const DB_CONFIG: &str = r#"
{
"from": "inline",
"config": {
"serverMode": "full",
"requestChunkSize": 1024,
"url": "../databases/db.sqlite3"
}
}
"#;
let v: serde_json::Value = serde_json::from_str(DB_CONFIG).unwrap();
let configs = vec![JsValue::from_serde(&v).unwrap()];
let worker_url = "./static/code/sqlite.worker.js";
let wasm_url = "./sql-wasm.wasm";
create_db_worker(configs, worker_url, wasm_url).await;
如果您希望使用内部捆绑的WASM和worker文件以避免捆绑东西,您可以选择启用bundled
特性 - 注意这可能会对数据库的预期路径造成一些问题。
动机
这一项目的动力是出于对有趣的基于Rust的Web项目的喜爱,如opal。
感谢
- sql.js-httpvfs和phiresky最初。这只是一个围绕那个更具创新性的想法的封装。
- 编写此封装的方法受到了Material Yew的启发。