La API integrada de Edge KV permite leer, escribir y eliminar pares clave-valor en namespaces.
Constructor
Crea una instancia de Edge KV para un namespace específico.
-
Definición
const edgeKv = new EdgeKV({ namespace: "ns"}); -
Parámetros
Parámetro
Descripción
namespace
El nombre del namespace creado en la consola.
get
Lee un valor de un namespace mediante una clave.
-
Definición
get(key[, {type: "type"}]) -
Parámetros
Parámetro
Descripción
key
Clave que se recuperará. Debe ser una cadena.
type
El formato del valor devuelto. Valores válidos:
-
stream (predeterminado): devuelve el valor como un
ReadableStream. -
text: retorna el valor como una cadena.
-
json: analiza el valor como JSON y retorna un objeto de JavaScript.
-
arrayBuffer: devuelve el valor como un
ArrayBuffer.
-
-
Valor devuelto
Devuelve una
Promiseque se resuelve con el valor:Se resuelve con
undefinedsi no se encuentra la clave.Se rechaza si hay un error.
-
Ejemplo
export default { fetch(request) { return handleRequest(request) } } async function handleRequest(request) { try { const edgeKV = new EdgeKV({ namespace: "ns" }); let getType = { type: "text" }; let value = await edgeKV.get("key", getType); if (value === undefined) { return "EdgeKV get: key not found"; } else { return new Response(value); } } catch (e) { return "EdgeKV get error" + e; } }
put
Escribe o actualiza un par clave-valor en un namespace.
-
Definición
put(key,value) -
Parámetros
Parámetro
Descripción
key
Clave que se escribirá. Debe ser una cadena no vacía.
value
El valor que se va a almacenar. Tamaño máximo: 1.8 MB. Tipos válidos:
-
string
-
ReadableStream
-
ArrayBuffer
-
Response
-
-
Valor devuelto
Devuelve una
Promiseque se resuelve al completarse:Se resuelve con
undefineden caso de éxito.Se rechaza si ocurre un error.
-
Ejemplo
export default { async fetch(request) { return handleRequest(request); } } async function handleRequest(request) { try { const edgeKV = new EdgeKV({ namespace: "ns" }); let data = await edgeKV.put("put_string", "string_value") // await edgeKV.put("put_stream", new HTMLStream("test_stream", [])); // await edgeKV.put("put_array_buffer", getArrayBuffer()); // await edgeKV.put("put_array_buffer", new Response("test")); if (data === undefined) { return "EdgeKV put success\n"; } else { return "EdgeKV put failed\n"; } } catch (e) { return "EdgeKV put error" + e; } }
delete
Elimina un par clave-valor de un namespace.
-
Definición
delete(key) -
Parámetros
Parámetro
Descripción
key
La clave que se va a eliminar. Debe ser una cadena.
-
Valor devuelto
Devuelve una
Promiseque se resuelve al completarse:El valor resuelto es
trueen caso de éxito.El valor resuelto es
falsesi falla.Se rechaza en caso de error.
-
Ejemplo
export default { async fetch(request) { return handleRequest(request); } } async function handleRequest() { try { const edgeKV = new EdgeKV({ namespace: "ns" }); let resp = await edgeKV.delete("key"); if (resp) { return "EdgeKV delete success"; } else { return "EdgeKV delete failed"; } } catch (e) { return "EdgeKV delete error" + e; } }