edit-icon download-icon

インストール

最終更新日: May 17, 2018

SDK のインストール

前提条件

  • OSS サービスを有効化します。

    Alibaba Cloud OSS を有効化していないか、またはOSSの関連知識がない場合、[OSS プロダクトページ] にログインして詳細を確認してください。

  • AccessKeyId と AccessKeySecret を作成します。

    Alibaba Cloud アカウントの AccessKey は、すべての API にアクセスする権限を付与するため、Alibaba Cloud ベストプラクティスに従って AccessKeyId と AccessKeySecret を作成することをお勧めします。サーバーにサービスをデプロイすると、API アクセスまたは日常的な O&M 管理と制御に RAM サブアカウントまたは STS を使用できます。クライアントにサービスをデプロイする場合は、API アクセスに STS を使用することをお勧めします。具体的な説明については、「アクセス制御」を参照してください。

環境要件

OSS JavaScript SDK は Node.js 環境に構築されています。BrowserifyBabel を通じてブラウザーに適応するコードが生成されます。OSS JavaScript SDK はブラウザーと Node.js 環境で使用できます。

ただし、ブラウザー環境の特殊な性質により、一部の機能は使用できません。

  • ストリームアップロード: ブラウザーではチャンク形式エンコーディングを使用できません。この機能はマルチパートアップロードに置き換えられます。

  • ローカルファイルに対する操作: ブラウザーではローカルファイルシステムを直接操作できません。オブジェクトは署名付き URL としてダウンロードできます。

  • バケット関連の操作 (listBuckets/BucketACL/BucketLogging)。現在、OSS ではバケット関連のクロスオリジンリクエストが提供されていないため、バケット関連の操作をコンソールで実行することはできません。

利用方法

OSS JavaScript SDK では、同期と非同期の両方を使用できます。

  • 同期モード: コルーチンモードに似ています。coyield は、ジェネレーター関数に基づいて使用されます。

  • 非同期モード: コールバックモードに似ています。API は Promise を返し、返された結果を .then() メソッドで処理します。また、エラーを .catch() メソッドで処理します。

同期モードでは、new OSS() メソッドを使用してクライアントを作成します。非同期モードでは、new OSS.Wrapper() メソッドを使用してクライアントを作成します。

次に、例に名前を付けて、最初にオブジェクトをアップロードしてから、オブジェクトをそれぞれダウンロードします。

同期モード

  1. // var client = new OSS(...);
  2. var co = require('co');
  3. co(function* () {
  4. var r1 = client.put('object', '/tmp/file');
  5. console.log('put success: %j', r1);
  6. var r2 = client.get('object');
  7. console.log('get success: %j', r2);
  8. }).catch(function (err) {
  9. console.error('error: %j', err);
  10. });

非同期モード

  1. // var client = new OSS.Wrapper(...);
  2. client.put('object', '/tmp/file').then(function (r1) {
  3. console.log('put success: %j', r1);
  4. return client.get('object');
  5. }).then(function (r2) {
  6. console.log('get success: %j', r2);
  7. }).catch(function (err) {
  8. console.error('error: %j', err);
  9. });

インストール

ブラウザーでの使用

対応しているブラウザー:

  • IE (バージョン 10 以上) および Edge
  • メインストリームバージョンの Chrome、Firefox、Safari
  • メインストリームバージョンの Android、iOS、WindowsPhone

ブラウザーで SDK を使用するには、次の <script> タグを webpage タグに含めることだけ必要です。

  1. <script src="http://gosspublic.alicdn.com/aliyun-oss-sdk-4.3.0.min.js"></script>

コードで OSS.Wrapper オブジェクトを使用できるようになります。

  1. <script type="text/javascript">
  2. var client = new OSS.Wrapper({
  3. region: '<oss region>',
  4. //The Alibaba Cloud account AccessKey gives you permission to access all APIs, so we suggest you follow Alibaba Cloud Best Practices for accessing an API using STS.
  5. accessKeyId: '<Your accessKeyId(STS)>',
  6. accessKeySecret: '<Your accessKeySecret(STS)>',
  7. stsToken: '<Your securityToken(STS)>',
  8. bucket: '<Your bucket name>'
  9. });
  10. </script>

Node.js の使用

対応している Node.js のバージョン:

  • 4.x
  • 5.x
  1. npm を使用して SDK をインストールします。

    1. npm install ali-oss
  2. これをプロジェクトで使用します。

    1. var OSS = require('ali-oss');
    2. var client = new OSS({
    3. region: '<oss region>',
    4. //The Alibaba Cloud account AccessKey gives you permission to access all APIs, so we suggest you follow Alibaba Cloud Best Practices for deploying the service on the server using an RAM sub-account or STS, or deploying the service on the client using STS.
    5. accessKeyId: '<Your accessKeyId>',
    6. accessKeySecret: '<Your accessKeySecret>',
    7. bucket: '<Your bucket name>'
    8. });

npm を使用しているときにネットワークの問題が発生した場合は、Taobao が提供している npm イメージ (cnpm) を使用できます。

Bower の使用

  1. Web プロジェクトの場合は、Bower を通じて SDK をインストールします。

    1. bower install ali-oss
  2. Web ページの <script> タグを追加します。

    1. <script src="bower_components/ali-oss/dist/aliyun-oss-sdk.min.js"></script>