Como funcionam os métodos locais e remotos para fazer upload
Como funcionam os métodos locais e remotos para fazer upload
Este guia detalha o fluxo completo para fazer upload de arquivos usando a API Frame.io V4. Ele aborda as solicitações e respostas brutas da API para os métodos local e remoto para fazer upload.
**Procurando guias específicos do SDK?**Para implementações para fazer upload com divisão em blocos integrada, novas tentativas e rastreamento de progresso, consulte o Guia para fazer upload do SDK para Python.
Pré-requisitos
Antes de começar a fazer upload de arquivos, verifique se você concluiu estas etapas de configuração:
Conta Frame.io V4
Você tem uma conta Frame.io V4 administrada por meio do Adobe Admin Console OU você mudou para a autenticação Adobe para o usuário da conta
Configuração do Adobe Developer Console
Você fez login no Adobe Developer Console e adicionou a API Frame.io a um projeto novo ou existente
Escolher o método de upload
Há duas formas de fazer upload de um arquivo usando a API do Frame.io: Criar arquivo (upload local) e Criar arquivo (upload remoto).
Use quando a mídia estiver acessível localmente ao aplicativo, semelhante a arrastar um arquivo do desktop
Use quando a mídia for acessada pela rede, como por meio de uma integração com outro serviço
Neste guia, começaremos com o caso mais simples: concluir um upload remoto.
Fazer upload remoto
Para criar um arquivo por meio de upload remoto, selecione o ponto de acesso Criar arquivo (upload remoto). O corpo da solicitação exige o nome do arquivo e a URL de origem.
No momento, o upload remoto tem um limite de tamanho de arquivo de 50 GB. Para arquivos maiores que 50 GB, use upload local.
Exemplo de solicitação
Exemplo de resposta
Uma solicitação bem-sucedida retornará uma resposta como a abaixo:
Upload local
Para criar um arquivo por meio de upload local, selecione o ponto de acesso Criar arquivo (fazer upload local). O corpo da solicitação exige o nome do arquivo e o tamanho do arquivo especificado em bytes.
Exemplo de solicitação
Exemplo de resposta
Se a solicitação for bem-sucedida, um recurso de arquivo placeholder será criado sem nenhum conteúdo. Dependendo do tamanho do arquivo, o corpo da resposta incluirá um ou mais upload_urls. Considerando este exemplo, precisaremos gerenciar esse processo para fazer upload em várias partes.
Requisitos importantes de upload:
Estes são detalhes importantes a ter em mente ao enviar as solicitações subsequentes para fazer upload:
- O método de solicitação HTTP deve ser
PUT - O cabeçalho
x-amz-acldeve ser incluído e definido como private - O cabeçalho
Content-Typedeve corresponder aomedia_typeespecificado na solicitação original Criar arquivo (fazer upload local). Isso é verdadeiro mesmo ao fazer upload do arquivo em partes separadas. No exemplo acima, o valor paramedia_typeéimage/jpeg. Portanto, o valor paraContent-Typetambém deve serimage/jpeg.
Upload em várias partes
Quando um arquivo resultar em mais de uma URL para fazer upload, você precisará dividir o arquivo de origem em blocos e emitir uma solicitação PUT para cada um.
Recomendação: o Guia para fazer upload do SDK para Python aborda o upload em várias partes usando FrameioUploader, que processa divisão em blocos, uploads paralelos, novas tentativas e rastreamento de progresso imediatamente.
Se precisar implementar manualmente o processo para fazer upload, por exemplo, em uma linguagem sem SDK ou para ter controle total sobre o processo, o script abaixo mostra como dividir um arquivo em blocos e fazer upload de cada um usando as URLs pré-assinadas.
Exemplo de implementação em Python
Resumo do fluxo de upload
Escolher método de upload
Escolha entre upload remoto (arquivo acessível por URL) ou upload local (arquivo no seu sistema)
Criar solicitação de arquivo
Faça a solicitação inicial para criar o recurso de arquivo com os metadados obrigatórios
Processar URLs de upload
Para uploads locais, processe os upload_urls retornados (em uma ou várias partes)
Próximas etapas: depois que o upload do arquivo for concluído, você poderá usar o ID de arquivo retornado para adicionar comentários, criar compartilhamentos ou executar outras operações usando a API Frame.io V4.