键值存储
在您的 Nuxt 应用程序中添加一个全局低延迟键值数据存储。
入门
通过在您的 nuxt.config.ts
文件中将 kv
属性添加到 hub
对象,在您的 NuxtHub 项目中启用键值存储。
nuxt.config.ts
export default defineNuxtConfig({
hub: {
kv: true
}
})
此选项将在开发中使用 Cloudflare 平台代理,并在您 部署 项目时自动为您的项目创建一个 Cloudflare Workers KV 命名空间。
列出所有键
检索 KV 存储中的所有键。
const keys = await hubKV().keys()
/*
[
'react',
'react:gatsby',
'react:next',
'vue',
'vue:nuxt',
'vue:quasar'
]
要获取以特定前缀开头的键,可以将前缀作为参数传递。
const vueKeys = await hubKV().keys('vue')
/*
[
'vue:nuxt',
'vue:quasar'
]
*/
我们建议使用前缀来更好地组织和提高性能,因为
keys()
将扫描整个命名空间。获取一项
从键值存储中检索一项。
const vue = await hubKV().get('vue')
/*
{
year: 2014
}
*/
设置一项
将一项放入存储中。
await hubKV().set('vue', { year: 2014 })
您可以使用 :
分隔键以创建命名空间
await hubKV().set('vue:nuxt', { year: 2016 })
值的最大大小为 25 MiB,键的最大长度为 512 字节。
过期
您还可以设置以秒为单位的 TTL(生存时间)
await hubKV().set('vue:nuxt', { year: 2016 }, { ttl: 60 })
TTL 过期后,该项将被删除。
是否存在一项
检查存储中是否存在某项。
const hasAngular = await hubKV().has('angular')
删除一项
从存储中删除一项。
await hubKV().del('react')
限制
- 值的**最大大小**为 25 MiB。
- 键的**最大长度**为 512 字节。
- TTL 必须至少为 60 秒。
详细了解 Cloudflare KV 限制。
了解更多
hubKV()
是具有 Cloudflare KV 绑定 驱动程序的 unstorage 实例。