Trabalhadores Cloudflare KV: keys ()

AnyWhichWay Segue 1 de jul · 2 min ler

O Cloudflare fornece um armazenamento de valor-chave eventualmente consistente em mais de 180 nós distribuídos globalmente com 128MB cada. Ele replica automaticamente os dados para as bordas sob demanda. Ele é fornecido como uma API REST baseada em URL e por meio de funções no Cloudflare Workers. Os Cloudflare Workers são semelhantes às funções do AWS Lambda, exceto que eles são totalmente distribuídos no primeiro dia e com base na Workers API padrão do setor. A rede da Cloudflare lançará quantos trabalhadores forem necessários para atender a solicitações de entrada. É um valor extraordinário em apenas US $ 5 por mês.

No entanto, o armazenamento KV incorporado em Workers não expõe todas as funções disponíveis por meio da API REST nem suporta todas as funções normalmente encontradas em um armazenamento KV. No momento da redação deste artigo, há suporte apenas para get , put e delete . Este artigo mostra como implementar e usar uma função de keys para obter as chaves na loja para a iteração.

Nota: Os leitores devem ter uma compreensão básica de como o armazenamento Cloudflare KV é acessado a partir do Cloudflare Workers para entender este tutorial.

Exemplo

Depois de ter implementado a sua versão da função de chaves, você poderá escrever um código como este na Gist:

Você pode notar que a função de keys acima recebe um argumento; enquanto que a função de keys no objeto de Storage JavaScript padrão da indústria não recebe argumentos. O argumento é um objeto de opções que pode ter três propriedades, prefix uma cadeia para corresponder ao início das chaves para que um subconjunto de um número possivelmente muito grande de chaves possa ser selecionado, limit para limitar o número de chaves retornadas em cada chamada e cursor para manter uma referência do cursor para várias chamadas.

Definição de Função de Chaves

A essência da função é mostrada abaixo. Isso requer o uso de várias chaves do Cloudflare, incluindo sua chave de autenticação secreta. Embora normalmente seja uma prática ruim incluir chaves em seu código, a Cloudflare atualmente não fornece um mecanismo para acessar suas chaves de dentro de um Cloudflare Worker. Contanto que você não verifique este código em um repositório público, você estará OK porque seus Trabalhadores estão em um ambiente seguro.

Este código foi inicialmente desenvolvido para suportar a implementação de um repositório JSON totalmente indexado, Thunderclap (atualmente em ALPHA), no topo da loja Cloudflare KV.