#cloudflare-workers #worker #key-value-store #kv #bindings #metadata

worker-kv

Rust绑定到Cloudflare Worker KV存储

8个版本 (破坏性)

0.7.0 2024年4月6日
0.6.0 2023年3月8日
0.5.1 2021年12月22日
0.4.0 2021年10月1日
0.1.1 2021年3月23日

#34 in #cloudflare-workers

Download history 6324/week @ 2024-04-15 6456/week @ 2024-04-22 7768/week @ 2024-04-29 4525/week @ 2024-05-06 7531/week @ 2024-05-13 16022/week @ 2024-05-20 8495/week @ 2024-05-27 8340/week @ 2024-06-03 14071/week @ 2024-06-10 6239/week @ 2024-06-17 10066/week @ 2024-06-24 7851/week @ 2024-07-01 7922/week @ 2024-07-08 4087/week @ 2024-07-15 6993/week @ 2024-07-22 6737/week @ 2024-07-29

每月25,896次下载
用于 27 个crate(4 个直接使用)

MIT/Apache

22KB
389

worker-kv

Docs.rs Crates.io MIT Apache 2

Rust绑定到Cloudflare Worker KV存储,使用 wasm-bindgenjs-sys

示例

let kv = KvStore::create("Example")?; // or KvStore::from_this(&this, "Example") if using modules format Workers

// Insert a new entry into the kv.
kv.put("example_key", "example_value")?
    .metadata(vec![1, 2, 3, 4]) // Use some arbitrary serialiazable metadata
    .execute()
    .await?;

// NOTE: kv changes can take a minute to become visible to other workers.
// Get that same metadata.
let (value, metadata) = kv.get("example_key").text_with_metadata::<Vec<usize>>().await?;

要获取更完整的示例,请查看完整的 示例

如何在WebAssembly中使用futures?

目前还没有从WebAssembly中直接使用Future的方法,但使用future_to_promise函数从wasm_bindgen_futures,我们可以将其转换为标准的JavaScript promise,这可以在常规JavaScript环境中等待。

依赖项

~1.4–3.5MB
~70K SLoC