Todos los productos
Search
Centro de documentos

Object Storage Service:Gestión de metadatos de archivos (Browser.js SDK)

Última actualización: Sep 03, 2026

Los objetos almacenados en Object Storage Service (OSS) se componen de claves, datos y metadatos del objeto. Los metadatos describen el objeto e incluyen encabezados HTTP estándar y metadatos de usuario. Puede utilizar los encabezados HTTP estándar para especificar directivas de solicitud HTTP para un objeto, como directivas de almacenamiento en caché y de descarga forzada. También puede configurar metadatos de usuario para un objeto con el fin de definir su propósito o atributos.

Notas de uso

  • Si utiliza herramientas de empaquetado como Webpack y Browserify, instale OSS SDK for Browser.js mediante la ejecución del comando npm install ali-oss.

  • Si desea acceder a un bucket de OSS desde un navegador pero no hay reglas CORS configuradas para dicho bucket, el navegador rechazará la solicitud. Por lo tanto, debe configurar reglas CORS en el bucket si desea acceder a él desde un navegador. Para obtener más información, consulte Installation.

  • En la mayoría de los casos, OSS SDK for Browser.js se utiliza en navegadores. Para evitar que su par de AccessKey quede expuesto, se recomienda usar credenciales de acceso temporal obtenidas de Security Token Service (STS) para acceder a OSS.

    Las credenciales de acceso temporal consisten en un par de AccessKey y un token de seguridad. El par de AccessKey incluye un AccessKey ID y un AccessKey secret. Para obtener más información sobre cómo conseguir credenciales de acceso temporal, consulte Use STS for temporary access authorization.

Código de ejemplo

A continuación se muestra cómo especificar metadatos al cargar un archivo, así como actualizar y consultar los metadatos del archivo una vez cargado.

<!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>

Referencias

  • Para consultar el código de ejemplo completo sobre la gestión de metadatos de archivos, revise el ejemplo en GitHub.

  • Para obtener más información sobre la operación de API que permite establecer o modificar metadatos de archivos durante la carga, consulte PutObject.

  • Para obtener más información sobre la operación de API destinada a consultar metadatos de archivos, consulte HeadObject.