Todos os produtos
Search
Central de documentação

Object Storage Service:Manage file metadata (Browser.js SDK)

Última atualização: Sep 22, 2026

Os objetos armazenados no Object Storage Service (OSS) são compostos por chaves, dados e metadados do objeto. Os metadados do objeto descrevem o próprio objeto e incluem cabeçalhos HTTP padrão e metadados do usuário. Use os cabeçalhos HTTP padrão para especificar políticas de requisição HTTP para um objeto, como políticas de cache e de download forçado. Configure também os metadados do usuário de um objeto para definir sua finalidade ou atributos.

Observações de uso

  • Ao usar ferramentas de empacotamento como Webpack e Browserify, instale o OSS SDK para Browser.js. Para isso, execute o comando npm install ali-oss.

  • Se você quiser acessar um bucket do OSS a partir de um navegador, mas nenhuma regra CORS estiver configurada para o bucket, o navegador rejeitará a requisição. Portanto, configure as regras CORS para um bucket se quiser acessá-lo a partir de um navegador. Para mais informações, consulte Installation.

  • Na maioria dos casos, o OSS SDK para Browser.js é utilizado em navegadores. Para evitar a exposição do seu par de AccessKey, recomendamos o uso de credenciais de acesso temporárias obtidas do Security Token Service (STS) para acessar o OSS.

    As credenciais de acesso temporárias consistem em um par de AccessKey e um token de segurança. O par de AccessKey é composto por um AccessKeyID e um AccessKeySecret. Para mais informações sobre como obter credenciais de acesso temporárias, consulte Use STS for temporary access authorization.

Código de exemplo

O código a seguir mostra como proceder: especifique os metadados ao fazer upload de um arquivo e, em seguida, atualize e visualize os metadados do arquivo após o upload.

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <title>Document</title>
</head>

<body>
  <button id='upload'>Upload</button>
  <button id='update'>Update Metadata</button>
  <button id='check'>View Metadata</button>
    <!--Import the SDK file.-->
  <script type="text/javascript" src="https://gosspublic.alicdn.com/aliyun-oss-sdk-6.18.0.min.js"></script>
  <script type="text/javascript">
    const client = new OSS({
       // Set region to the region where the bucket is located. For example, if the bucket is in the China (Hangzhou) region, set region to oss-cn-hangzhou.
       region: 'yourRegion',
       authorizationV4: true,
       // The temporary AccessKey pair (AccessKey ID and AccessKey secret) obtained from Security Token Service (STS).
       accessKeyId: 'yourAccessKeyId',
       accessKeySecret: 'yourAccessKeySecret',
       // The security token (SecurityToken) obtained from STS.
       stsToken: 'yourSecurityToken',
       // Specify the bucket name. For example, examplebucket.
       bucket: "examplebucket",
     });

    const upload = document.getElementById('upload')
    const update = document.getElementById('update')
    const check = document.getElementById('check')

    // Specify the content of the file to upload.
    const file = new Blob(['examplecontent'])
    // Specify the name of the object to be uploaded to the bucket.
    const fileName = 'exampleobject.txt'

    // Upload the file.
    upload.addEventListener('click', () => {
     client.put(fileName, file, {
        // Specify custom metadata. A file can have multiple metadata entries, but the total size cannot exceed 8 KB.
        meta: {
          year: 2020,
          people: 'eliot'
        }
      }).then(r => console.log(r))
    })

    // Update the metadata.
    update.addEventListener('click', () => {
      client.putMeta(fileName, {
        year: 2021,
        people: 'evan'
      }
      ).then(r => {
        console.log(r)
      })
    })
    // View the metadata.
    check.addEventListener('click', () => {
      // Based on the metadata configured in the preceding code, add x-oss-meta-year to the ExposeHeaders configuration item in the cross-origin rule of the bucket. Otherwise, the meta printed to the console is null.
      client.head(fileName).then(m => console.log(m))
    })

  </script>
</body>

</html>

Referências

  • Para o código de exemplo completo sobre o gerenciamento de metadados de arquivo, consulte o exemplo no GitHub.

  • Para mais informações sobre a operação de API, consulte PutObject. Com ela, defina ou modifique os metadados de arquivo ao fazer upload de um arquivo.

  • Para mais informações sobre a operação de API, consulte HeadObject. Com ela, visualize os metadados de arquivo.