Saltar para o conteúdo principal
Este guia de referência explica a classe Client do pacote replit-object-storage-python e fornece exemplos de código para seus métodos de classe.

Client

A classe Client gerencia as interações com o Replit App Storage. Essa classe possui métodos para realizar operações em objetos de um bucket. Para importar a classe do pacote replit.object_storage, adicione a seguinte linha ao seu código Python:
Use o código a seguir para criar uma instância de Client que interage com o Replit App Storage:
Se o seu app usa vários buckets, crie uma instância de Client por bucket.

__init__

O método init inicializa uma instância da classe Client.
Argumento:
  • bucket_id (Optional[str]): o ID do bucket que o cliente gerencia. Quando omitido, o Client usa o bucket padrão associado ao Replit App ou à Deployment.

copy

O método copy copia um objeto dentro do mesmo bucket. Se já existir um objeto no mesmo local, ele sobrescreve o original.
Argumentos:
  • object_name (str) - O caminho completo do objeto de origem.
  • dest_object_name (str) - O caminho completo do destino do objeto.
Levanta:
  • ObjectNotFoundError - Indica que o objeto de origem não existe no caminho especificado.

delete

O método delete remove permanentemente um arquivo do App Storage.
Argumentos:
  • object_name (str) - O nome do objeto a ser excluído.
  • ignore_not_found (bool) - Quando True, suprime o erro caso o objeto não exista.
Levanta:
  • ObjectNotFoundError - Indica que o objeto não existe.

download_as_bytes

O método download_as_bytes recupera o conteúdo de um arquivo como bytes.
Argumento:
  • object_name (str) - O nome do objeto a ser baixado.
Retorna:
  • bytes- A representação bruta em bytes do conteúdo do objeto.
Levanta:
  • ObjectNotFoundError - Indica que o objeto não existe.

download_as_text

O método download_as_text faz o download do conteúdo de um arquivo como um tipo str.
Argumento:
  • object_name (str) - O nome do objeto de origem a ser recuperado.
Retorna:
  • str: o conteúdo do objeto como uma string codificada em UTF-8.
Levanta:
  • ObjectNotFoundError - Indica que o objeto não existe.

download_to_filename

Faz o download do conteúdo de um objeto para um arquivo no disco local.
Argumentos:
  • object_name (str) - O nome do objeto de origem no App Storage a ser recuperado.
  • dest_filename (str) - O nome do arquivo de destino no disco local.
Levanta:
  • ObjectNotFoundError - Indica que o objeto não existe.

exists

O método exists verifica se um objeto existe.
Argumento:
  • object_name (str) - O nome do objeto a verificar a existência.
Retorna:
  • bool: True se o objeto existir, False caso contrário.

list

O método list lista os objetos do Bucket.
Argumentos:
  • end_offset(Optional[str]) - Filtra os resultados para objetos nomeados lexicograficamente antes de end_offset. Se start_offset estiver definido, os objetos listados têm nomes entre start_offset (inclusive) e end_offset (exclusivo).
  • match_glob (Optional[str]) - Usa um padrão glob para filtrar os resultados. Por exemplo: “foo*bar” corresponde a “footbar”, “foo baz bar” e “foobar”.
  • max_results (Optional[int]) - O número máximo de resultados a retornar na resposta.
  • prefix (Optional[str]) - Filtra os resultados para objetos cujos nomes têm o prefixo especificado.
  • start_offset (Optional[str]) - Filtra os resultados para objetos cujos nomes sejam lexicograficamente iguais ou posteriores a start_offset. Quando end_offset é definido, os objetos listados têm nomes entre start_offset (inclusive) e end_offset (exclusivo).
Retorna:
  • List(Object): uma lista de objetos que correspondem aos parâmetros de consulta fornecidos.

upload_from_filename

Use upload_from_filename() para fazer o upload de um objeto a partir de um arquivo de origem no disco local para o App Storage.
Argumentos:
  • dest_object_name(str) - O nome do arquivo enviado.
  • src_filename(str) - O arquivo de origem a ser enviado.

upload_from_bytes

O método upload_from_bytes faz o upload de um objeto a partir de dados em bytes.
Argumentos:
  • dest_object_name(str) - O nome do objeto a ser enviado.
  • src_data(str) - Os dados em bytes a serem enviados.

upload_from_text

O método upload_from_text faz o upload de um objeto a partir de uma string.
Argumentos:
  • dest_object_name(str) - O nome do objeto a ser enviado.
  • src_data(str)- Os dados de texto a serem enviados.

Tipos de exceção

  • Ao interagir com o Replit App Storage usando o Client, qualquer método pode retornar um dos seguintes erros:
    • BucketNotFoundError: indica que o nome do bucket configurado não corresponde a nenhum bucket no App Storage.
    • DefaultBucketError: indica configuração de bucket padrão ausente.
    • ForbiddenError: indica permissões insuficientes para acessar o bucket.
    • TooManyRequestsError: indica que a operação está limitada por taxa devido a requisições excessivas.
    • UnauthorizedError: indica que a autorização restringiu o acesso à operação.

Exemplos de métodos de classe

As seções a seguir fornecem exemplos de código para gerenciar seus objetos usando o SDK do Replit App Storage.

Recuperar um arquivo como texto

Recuperar bytes brutos de um arquivo

Fazer download de um arquivo para o sistema de arquivos local

Listar objetos no bucket

Fazer upload de um arquivo a partir de texto

Fazer upload de um arquivo como bytes

Fazer upload de objetos a partir do sistema de arquivos

Excluir um objeto do bucket