すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:node.jsを使用してオブジェクトメタデータを管理する

最終更新日:Feb 22, 2024

Object Storage Service (OSS) に保存されているオブジェクトは、キー、データ、およびメタデータで構成されます。 オブジェクトメタデータは、オブジェクト属性を記述する。 オブジェクトメタデータには、標準HTTPヘッダーとユーザーメタデータが含まれます。 標準のHTTPヘッダーを設定することで、オブジェクトキャッシュポリシーや強制オブジェクトダウンロードポリシーなどのカスタムHTTPリクエストポリシーを作成できます。 オブジェクトのユーザーメタデータを設定して、オブジェクトの目的または属性を識別できます。

オブジェクトのアップロード時のオブジェクトメタデータの指定

putputStream、またはmultipartUploadを呼び出すと、metaパラメーターを設定してオブジェクトメタデータを指定できます。

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

const client = new OSS({
  // バケットが配置されているリージョンを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンをoss-cn-Hangzhouに設定します。 
  リージョン: 'yourRegion' 、
  // 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。 
  accessKeyId: process.env.OSS_ACCESS_KEY_ID、
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET、
  // バケットの名前を指定します。 
  bucket: 'examplebucket'
});

async関数put() {
  try {
    meta = { year: 2016, people: 'mary' };
    let result = await client.put('object-name', path.normalize('D :\\ localpath\\examplefile.txt '), meta);
  console.log (結果);
  } catch (e) {
    console.log(e);
  }
}

put(); 

既存のオブジェクトメタデータの変更

putMetaを呼び出して、既存のオブジェクトのメタデータを変更できます。

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

const client = new OSS({
  // バケットが配置されているリージョンを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンをoss-cn-Hangzhouに設定します。 
  リージョン: 'yourRegion' 、
  // 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。 
  accessKeyId: process.env.OSS_ACCESS_KEY_ID、
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET、
  // バケットの名前を指定します。 
  bucket: 'examplebucket'
});

async関数putMeta() {
  try {
    meta = { year: 2023, people: 'mary' };
    let result = await client.putMeta('object-name', meta);
    console.log (結果);
  } catch (e) {
    console.log(e);
  }
}

putMeta();