Edge Storage API
A Edge Functions Storage API é uma interface que permite o acesso ao Azion Edge Storage. Através dessa interface, é possível ler e escrever dados no storage e seus buckets.
Instanciação da classe
Para a utilização dessa API, é necessário importar e instanciar a classe Storage
, passando o nome do bucket.
Sintaxe
Importação:
Instanciação:
Parâmetros
Parâmetro | Tipo | Descrição |
---|---|---|
bucket | String | Nome de um bucket |
Valor de Retorno
Objeto Storage
usado para acessar o Edge Storage.
Métodos
async storage.put
O método Storage.put
é usado para inserir um novo objeto no storage.
Sintaxe
Parâmetros
Parâmetro | Tipo | Descrição |
---|---|---|
key | String | Identificador que permite a busca por um objeto no storage |
value | ArrayBuffer ou ReadableStream | Conteúdo do objeto sendo armazenado. No caso de value implementar um ReadableStream, as APIs de Stream podem ser usadas e a opção content-length é obrigatória |
options | Object | Os atributos options são descritos na tabela abaixo |
options
Para passar o parâmetro options
, você deve fornecer um objeto com os seguintes atributos:
Atributo | Tipo | Descrição |
---|---|---|
content-type | String | O content-type do objeto sendo criado. É semelhante ao cabeçalho HTTP content-type e descreve como o conteúdo do Edge Storage deve ser tratado. content-type é opcional. O valor padrão é application/octet-stream |
content-length | String | O tamanho do objeto a ser criado, em bytes. É obrigatório quando o valor é ReadableStream |
metadata | Object | Qualquer objeto JavaScript contendo informações sobre o objeto que será armazenado no Storage. Todas as propriedades do objeto devem ser strings |
Retorno
Sucesso | Erro |
---|---|
Nenhuma resposta | Lança um StorageError |
Exemplo de Código
- Para persistir o corpo da requisição:
- Para persistir um objeto JSON:
- Para salvar um JSON com metadados:
async storage.get(key)
O método storage.get(key)
é usado para recuperar um objeto.
Sintaxe
Parâmetros
Parâmetro | Tipo | Descrição |
---|---|---|
key | String | Identificador que permite a busca por um objeto no bucket |
Retorno
Sucesso | Erro |
---|---|
Retorna um objeto da classe StorageObject | Lança um StorageError |
Exemplo de Código
- Para recuperar e retornar o conteúdo do storage:
- Para obter um JSON do storage:
- Para ler os metadados de um objeto:
async storage.delete(key)
O Storage.delete(key)
é usado para remover um objeto do Edge Storage.
Sintaxe
Parâmetros
Parâmetro | Tipo | Descrição |
---|---|---|
key | String | Identificador que permite a busca por um objeto no bucket |
Retorno
Sucesso | Erro |
---|---|
Nenhuma resposta | Lança um StorageError |
Exemplo de Código
- Para excluir um objeto armazenado no Edge Storage:
async storage.list()
O método Storage.list()
é usado para listar todos os objetos pertencentes ao bucket
específico.
Sintaxe
Retorno
Sucesso | Erro |
---|---|
Retorna StorageObjectList | Lança um StorageError |
Exemplo de Código
- Listando objetos do Edge Storage:
Métodos da Classe StorageObject
Método | Descrição |
---|---|
StorageObject.content | Propriedade de leitura contendo um ReadableStream para o conteúdo armazenado no storage |
async StorageObject.arrayBuffer() | Função assíncrona que retorna um ArrayBuffer com o conteúdo armazenado no storage. Este método consome o ReadableStream da propriedade de content |
StorageObject.metadata | Propriedade de leitura contendo um objeto Map com os metadados do objeto armazenados no storage |
StorageObject.contentType | Propriedade de leitura contendo o content-type do conteúdo armazenado no storage |
StorageObject.contentLength | Propriedade de leitura contendo o tamanho em bytes do conteúdo armazenado no storage |