Node.js获取文件元数据

默认情况下,在已开启版本控制的存储空间(Bucket)中调用HeadObject接口只能获取文件(Object)当前版本的元数据。通过指定文件的版本ID(versionId),您可以获取文件指定版本的元数据。

说明

如果文件的当前版本为删除标记,则返回404 Not Found。请求参数中指定versionId则返回文件指定版本的元数据。获取文件versionId的具体操作,请参见列举文件

示例代码

以下代码用于获取目标存储空间examplebucketexampledir目录下exampleobject.txt文件指定版本的元数据。

const OSS = require('ali-oss');

const client = new OSS({
  // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
  region: 'yourRegion',
  // 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // 填写Bucket名称,例如examplebucket。
  bucket: 'examplebucket',
});

async function headInfo() {
  // 填写文件完整路径,例如exampledir/exampleobject.txt。文件完整路径中不能包含Bucket名称。
  const name = 'exampledir/exampleobject.txt'
  // 填写文件的版本ID,获取文件指定版本的元数据。
  const versionId = 'CAEQMxiBgICAof2D0BYiIDJhMGE3N2M1YTI1NDQzOGY5NTkyNTI3MGYyMzJm****'
  const options = {
    versionId
  };
  const result = await client.head(name, options);
  console.log(result);
}

headInfo();

相关文档

关于获取文件元数据的API接口说明,请参见HeadObjectGetObjectMeta