O upload simples usa o método PutObject para enviar um único arquivo, denominado objeto. Use esse recurso para fazer upload de arquivos locais ou arrays binários byte[].
Observações de uso
Antes de executar o código de exemplo deste tópico, crie uma instância OSSClient usando métodos como nome de domínio personalizado ou Security Token Service (STS). Para mais informações, consulte Inicialização (Android SDK).
Permissões
Por padrão, uma conta Alibaba Cloud tem permissões completas. Usuários RAM ou funções RAM vinculados a essa conta não têm permissão por padrão. A conta Alibaba Cloud ou o administrador da conta deve conceder as permissões operacionais por meio de políticas do RAM ou Bucket Policy.
|
API |
Ação |
Descrição |
|
PutObject |
|
Faz o upload de um objeto. |
|
|
Necessário se você especificar tags de objeto com o cabeçalho |
|
|
|
Necessário quando o cabeçalho |
|
|
|
Fazer upload de um arquivo local
Envie arquivos locais para o OSS de forma síncrona ou assíncrona.
Fazer upload de um array binário byte[]
O código a seguir mostra como fazer o upload síncrono de um array binário byte[] como um objeto chamado exampleobject.txt na pasta exampledir/ do bucket examplebucket.
byte[] uploadData = new byte[100 * 1024];
new Random().nextBytes(uploadData);
// Create an upload request.
// Specify the bucket name (for example, examplebucket) and the full path of the object (for example, exampledir/exampleobject.txt).
// The full path of the object cannot contain the bucket name.
PutObjectRequest put = new PutObjectRequest("examplebucket", "exampledir/exampleobject.txt", uploadData);
try {
PutObjectResult putResult = oss.putObject(put);
Log.d("PutObject", "UploadSuccess");
Log.d("ETag", putResult.getETag());
Log.d("RequestId", putResult.getRequestId());
} catch (ClientException e) {
// Client exception, such as a network exception.
e.printStackTrace();
} catch (ServiceException e) {
// Server exception.
Log.e("RequestId", e.getRequestId());
Log.e("ErrorCode", e.getErrorCode());
Log.e("HostId", e.getHostId());
Log.e("RawMessage", e.getRawMessage());
}
Referências
Para obter o código de exemplo completo de upload simples, consulte o exemplo no GitHub.
Para mais informações sobre a operação de API de upload simples, consulte PutObject.
Para mais informações sobre como inicializar uma instância OSSClient, consulte Inicializar uma instância OSSClient para Android.