Todos os produtos
Search
Central de documentação

ApsaraVideo VOD:Upload from clients

Última atualização: Aug 24, 2026

O upload a partir de clientes permite que aplicativos móveis, páginas web e mini programas enviem arquivos de mídia diretamente para um bucket do Object Storage Service (OSS) gerenciado pelo ApsaraVideo VOD. Os arquivos não passam pelo servidor de aplicação, o que reduz os custos de largura de banda e simplifica a arquitetura. Como credenciais AK/SK permanentes não devem ser incorporadas em aplicações cliente, o SDK de upload utiliza credenciais temporárias emitidas pelo service de autorização backend (AppServer) para autenticar cada sessão de upload.

Funcionamento do upload a partir de clientes

Os SDKs de upload para clientes são construídos sobre o OSS SDK. Quando um cliente envia um arquivo, o SDK gerencia toda a lógica subjacente de upload multipart e upload retomável. O arquivo trafega diretamente do dispositivo cliente para o bucket OSS do ApsaraVideo VOD. O AppServer apenas emite as credenciais e nunca acessa o conteúdo do arquivo.

O upload a partir de clientes segue um processo de três etapas:

  1. O cliente envia uma solicitação HTTP ao AppServer com metadados da mídia (como Title, FileName, CateId e Tags).

  2. O AppServer obtém uma credencial de upload do VOD ou STS e a retorna ao cliente.

  3. O cliente usa a credencial para enviar o arquivo diretamente ao OSS. Após a conclusão do upload, o SDK aciona um callback de sucesso e o VOD inicia automaticamente os pipelines de transcodificação e processamento.

Métodos de autorização

O SDK de upload para clientes oferece suporte a dois métodos de autorização. A tabela comparativa abaixo ajuda a escolher o método mais adequado ao seu cenário. As etapas detalhadas para cada método estão descritas após a tabela.

Dimensão de comparação

URL e credencial de upload (recomendado)

STS Token

Fluxo de autorização

O AppServer chama a API do VOD diretamente para obter credenciais de upload

O AppServer chama STS AssumeRole e, em seguida, o cliente chama a API do VOD com um STS Token

Segurança

Credencial por vídeo com controle granular

Permissões baseadas em função com escopo mais amplo

Complexidade de configuração

Mais simples — requer apenas o SDK do VOD no AppServer

Exige o SDK do STS no AppServer além da configuração de função RAM

Escopo da credencial

Vinculada a um único vídeo (VideoId)

Vinculada a uma função RAM, válida para todas as ações permitidas pela política da função

Recomendado para

Maioria dos cenários de upload via cliente

Cenários que exigem acesso mais amplo à API do VOD a partir do cliente

Método 1: URL e credencial de upload (recomendado)

Este método oferece configuração mais simples, maior segurança com controle de permissão por vídeo e parâmetros de resposta mais flexíveis. É indicado para a maioria dos cenários de upload via cliente.

Etapa 1: Obter URL e credencial de upload

O cliente envia uma solicitação HTTP ao AppServer com metadados da mídia (como Title, FileName, CateId e Tags). O AppServer utiliza o AK/SK para chamar CreateUploadVideo no VOD, que retorna três valores essenciais: UploadAuth (token temporário de upload), UploadAddress (caminho de destino no OSS, codificado em Base64) e VideoId (identificador único da mídia). O AppServer encaminha esses dados ao cliente.

Etapa 2: Construir parâmetros de upload e enviar diretamente ao OSS

Inicialize o SDK de upload no cliente com UploadAuth, UploadAddress e VideoId, juntamente com o caminho do arquivo local. O SDK analisa automaticamente o UploadAddress para obter o Endpoint e a Object Key do OSS e, em seguida, envia o arquivo diretamente ao OSS. Esse processo suporta upload multipart e upload retomável. Os arquivos vão direto do cliente para o OSS sem passar pelo servidor.

Etapa 3: Resultado do upload

Após o OSS concluir o upload, o SDK aciona o callback onUploadSucceed, contendo o VideoId. O VOD detecta automaticamente a conclusão do upload e dispara os pipelines de transcodificação e processamento com base no TemplateGroupId ou WorkflowId configurado. Também é possível configure callbacks de eventos (HTTP ou MNS) para receber notificações de evento FileUploadComplete.

Método 2: STS Token

Etapa 1: Obter credenciais temporárias do STS

O cliente solicita credenciais temporárias ao AppServer. O AppServer usa o AK/SK para chamar AssumeRole no STS, obtendo um conjunto de credenciais com tempo limitado: AccessKeyId, AccessKeySecret e SecurityToken (validade: 900 a 3.600 segundos), que são retornados ao cliente.

Etapa 2: Obter credenciais de upload e enviar (gerenciado automaticamente pelo SDK)

Inicialize o SDK de upload no cliente com o STS Token. O SDK utiliza automaticamente o STS Token para chamar CreateUploadVideo (com Title, FileName e outros parâmetros), obtém UploadAuth, UploadAddress e VideoId, e executa automaticamente o upload multipart. Todo o processo é transparente para o desenvolvedor — nenhuma chamada manual à API do VOD é necessária.

Etapa 3: Resultado do upload

Assim como no Método 1, o SDK aciona onUploadSucceed com o VideoId, e o VOD processa o arquivo automaticamente.

Recursos principais

Upload multipart

O upload multipart divide arquivos grandes em partes menores e realiza o envio em paralelo. Isso melhora tanto a velocidade quanto a confiabilidade do upload de arquivos de mídia grandes, pois uma falha de rede exige apenas o reenvio das partes com erro, em vez de todo o arquivo. O upload multipart está ativado por padrão em todos os SDKs de upload para clientes e não requer configuração adicional.

Upload retomável

O upload retomável permite que o SDK continue um upload interrompido a partir da última parte enviada com sucesso, em vez de reiniciar do começo. Quando uma desconexão de rede, execução em segundo plano do aplicativo ou suspensão do dispositivo interrompe o upload, o SDK armazena internamente os dados de checkpoint. Assim que a conexão é restaurada e o aplicativo retoma a atividade, o SDK continua automaticamente a partir do checkpoint sem intervenção do desenvolvedor.

Controle de upload

O SDK de upload fornece APIs programáticas para iniciar, parar, pausar e retomar uploads individuais. Esse recurso é útil para respeitar ações iniciadas pelo usuário, como cancelar um upload ao navegar para outra tela, ou gerencie a concorrência de uploads em cenários de lote. Controle todo o ciclo de vida do upload exclusivamente por meio de chamadas de métodos do SDK.

Callbacks de progresso

O SDK expõe callbacks de progresso detalhados que informam a porcentagem de dados enviados para cada arquivo. Utilize esses callbacks para atualize barras de progresso, exibir velocidades de upload ou acionar lógicas condicionais, como desativar certos elementos da interface durante um upload. Os callbacks de progresso são disparados em intervalos regulares durante o envio, fornecendo visibilidade em tempo real do status da transferência.

Alternância de rede

Clientes móveis frequentemente alternam entre redes Wi-Fi e celulares. O SDK suporta a pausa e a retomada de uploads para lidar com essas transições. Para evitar o consumo de dados móveis, chame o método de pausa quando o dispositivo mudar para uma rede móvel e chame o método de retomada quando o Wi-Fi for restaurado. A aplicação deve implementar a lógica de detecção de transição de rede.

Upload em lote

O SDK gerencia uma fila de upload que permite adicionar, remover, cancelar, retomar e percorrer vários arquivos. É possível limpar toda a fila ou manipular entradas individuais. O upload em lote é útil em cenários onde os usuários selecione múltiplos arquivos de mídia de uma vez, como no upload de uma galeria de fotos, e o SDK os agenda sequencialmente ou em paralelo conforme os recursos disponíveis.

Suporte a metadados

Ao obter credenciais de upload, anexe metadados ao ativo de mídia que será enviado. Os campos de metadados suportados incluem Title, Tags, CateId, CoverURL, TemplateGroupId e WorkflowId. Defina metadados na etapa de credencial garante que o ativo de mídia seja imediatamente associado à categoria, tags e fluxo de trabalho de processamento corretos após a conclusão do upload, eliminando a necessidade de uma chamada de API separada para atualize as propriedades da mídia.

Plataformas e versões suportadas

Plataforma

Versão atual

Requisito mínimo de sistema

Web (JavaScript)

Consulte Upload files using the JavaScript SDK

Navegadores modernos (Chrome, Safari, Firefox, Edge)

Android

Consulte Upload files using the Android SDK

Android 5.0+

iOS

Consulte Upload files using the iOS SDK

iOS 12.0+

Mini programa WeChat

Consulte Upload SDK for WeChat Mini Program

Biblioteca base WeChat 2.x+

Para os números de versão mais recentes e links de download, consulte Release notes of the upload SDKs.

Conformidade com privacidade e faturamento

Conformidade com privacidade

O SDK de upload para clientes foi projetado para ser incorporado em aplicativos distribuídos por lojas de aplicativos. O SDK não coleta dados pessoais. Para requisitos de conformidade ao distribuir aplicativos com integrações de SDK, consulte Service Agreement.

Faturamento

O uso do SDK de upload para clientes é gratuito. Os custos estão associados aos recursos do ApsaraVideo VOD consumidos durante e após o upload:

Item de faturamento

Descrição

Taxas de armazenamento

Cobradas pelo volume de armazenamento dos arquivos de mídia enviados e pela duração do armazenamento.

Taxas de tráfego

O tráfego de upload (tráfego de entrada do cliente para o OSS) é gratuito. O tráfego de reprodução downstream é cobrado separadamente.

Taxas de transcodificação

Se a transcodificação for acionada após o upload, a cobrança é baseada na duração do arquivo de saída e na especificação de transcodificação. Não há cobrança se a transcodificação não for realizada.

Taxas de aceleração de upload

Cobradas pelo volume de dados acelerados no modelo de pagamento conforme o uso quando a aceleração de upload está ativada. Para informações sobre preços, consulte Billing overview. Entre em contato com seu representante de vendas para consultoria.

Nota

O tráfego de upload (tráfego de entrada do cliente para o OSS) não é cobrado. Para mais informações sobre o faturamento do VOD, consulte Billing overview.