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

Object Storage Service:ローカルファイルのアップロード

最終更新日:Dec 18, 2023

このトピックでは、put操作を呼び出してローカルファイルをObject Storage Service (OSS) にアップロードする方法について説明します。

サンプルコード

次のコードは、examplefile.txtという名前のローカルファイルをexamplebucketという名前のバケットにアップロードする方法の例を示しています。 アップロードされたファイルは、OSSにexampleobject.txtという名前のオブジェクトとして保存されます。

const OSS = require('ali-OSS ')
const path=require("path")

const client = new OSS({
  // バケットが配置されているリージョンを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンを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、
  // バケットの名前を指定します。 
  bucket: 'examplebucket' 、});

// カスタムリクエストヘッダーを追加します。
const headers = {
  // オブジェクトのストレージクラスを指定します。 
  「x-oss-storage-classs」: 「標準」、
  // オブジェクトのアクセス制御リスト (ACL) を指定します。 
  'x-oss-object-acl': 'private' 、
  // オブジェクトのURLを使用してオブジェクトにアクセスする場合は、オブジェクトを添付ファイルとしてダウンロードするように指定します。 この例では、ダウンロードしたオブジェクトの名前はexample.jpgです。 
  'Content-Disposition': 'attachment; filename="example.txt" '、
  // オブジェクトのタグを指定します。 オブジェクトに複数のタグを同時に指定できます。 
  'x-oss-tagging ': 'Tag1=1&Tag2=2' 、
  // PutObject操作が同じ名前のオブジェクトを上書きするかどうかを指定します。 この例では、x-oss-forbid-overwriteパラメーターをtrueに設定します。これは、同じ名前の既存のオブジェクトをアップロードしたオブジェクトで上書きできないことを指定します。 
  'x-oss-forbid-overwrite': 'true' 、};

async関数put () {
  try {
    // オブジェクトとローカルファイルのフルパスを指定します。 オブジェクトのフルパスにバケット名を含めないでください。 
    // ローカルファイルのパスが指定されていない場合、サンプルプログラムが属するプロジェクトのパスからローカルファイルがアップロードされます。 
    const result = await client.put('exampleobject.txt ', path.normalize('D :\\ localpath\\examplefile.txt')
    // カスタムヘッダーを指定します。
    ,{headers}
    );
    console.log (結果);
  } catch (e) {
    console.log(e);
  }
}

put(); 

よくある質問

オブジェクトをアップロードした後、HTTP URLではなくHTTPS URLが返されるようにするにはどうすればよいですか。

オブジェクトをアップロードした後にHTTPS URLを返す場合は、secureパラメーターをtrueに設定する必要があります。 詳細については、「パラメーター」をご参照ください。

参考資料

  • 簡単なアップロードの実行に使用する完全なサンプルコードについては、『GitHub』をご参照ください。

  • シンプルアップロードを実行するために呼び出すことができるAPI操作の詳細については、「PutObject」をご参照ください。