That one listing is limited to 1000 keys. You can use the cursor to paginate.
That one listing is limited to 1000 keys. You can use the cursor to paginate.


env.KV.get() statement?expirationTtl has no effect. We did start the rollout of the new KV caching infrastructure on Monday which might explain the observed difference but I don't see anything in Sentry, our logging, nor can I reproduce what you're observing...env.KV.get()export default {
async fetch(request, env, ctx) {
if (request.headers.get('authorization') !== 'abc') {
return new Response('not authorized', { status: 401 })
}
try {
const key = "registrationChallenge/bob4@foo.bar"
const value = Math.random().toString()
const firstGet = await env.KV.get(key) ?? "<null>"
await env.KV.put(key, value)
const secondGet = await env.KV.get(key) ?? "<null>"
return new Response(JSON.stringify({
key,
firstGet,
updated: value,
secondGet,
}, undefined, 2));
} catch (e) {
return new Response(e.stack, { status: 500 });
}
},
};{
"key": "registrationChallenge/bob4@foo.bar",
"firstGet": "<null>",
"updated": "0.6567038844336677",
"secondGet": "0.6567038844336677"
}expirationTtl{
"key": "registrationChallenge/helloworld+1////22///%2f+++...\\<<<>/@test.com:443//",
"firstGet": "<null>",
"updated": "0.41442319206749634",
"secondGet": "0.41442319206749634"
}