全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
阿里云SDK开发指南

Node.js SDK 使用说明

更新时间:2018-03-21 19:26:30

阿里云Node.js SDK让您不用复杂编程即可访问云服务器、云监控等多个阿里云服务。这里向您介绍如何获取阿里云Node.js SDK并开始调用。

环境准备

  1. 阿里云Node.js SDK适用于Node.js最近两个LTS版本(Node.js 4.x 和 Node.js 6.x)。您可以通过执行命令node -v查看Node.js的版本。

  2. 要使用阿里云Node.js SDK,您需要一个RAM账号以及一对AccessKey IDAccessKey Secret。请在阿里云控制台中的AccessKey管理页面上创建和查看您的 Access Key,或者联系您的系统管理员。

  3. 要使用阿里云SDK访问某个产品的API,您需要事先在阿里云控制台中开通这个产品。

安装PHP SDK

  1. 登录阿里云SDK频道下载Node.js SDK。

    说明:部分阿里云产品的SDK未收录到阿里云SDK频道,例如对象存储(OSS),请前往这些产品的详情页面获取相应的SDK。

  2. 建议您使用npm来完成Node.js依赖模块的安装,所有阿里云官方的Node.js SDK 都位于 @alicloud 下。

  • 当基于SDK核心库进行开发时,请执行以下命令安装@alicloud/pop-core模块。

    1. $ npm install @alicloud/pop-core --save

    以上命令中的--save会将模块写入应用的package.json文件中,作为依赖模块。

  • 当基于具体云产品的SDK进行开发时,需安装该云产品的模块本操作以安装MNS产品的模块为例。

    1. $ npm install @alicloud/mns --save

代码示例

阿里云的云产品的OpenAPI有RPC和REST两种风格。

调用RPC API

参考以下示例调用RPC API:

  1. var RPCClient = require('@alicloud/pop-core').RPCClient;
  2. var client = new RPCClient({
  3. accessKeyId: '<accessKeyId>',
  4. secretAccessKey: '<secretAccessKey>',
  5. endpoint: '<endpoint>',
  6. apiVersion: '<apiVersion>'
  7. });
  8. // => returns Promise
  9. client.request(action, params, options);

调用REST

参考以下示例调用REST API:

  1. var ROAClient = require('@alicloud/pop-core').ROAClient;
  2. var client = new ROAClient({
  3. accessKeyId: '<accessKeyId>',
  4. accessKeySecret: '<secretAccessKey>',
  5. endpoint: '<endpoint>',
  6. apiVersion: '<apiVersion>'
  7. });
  8. // => returns Promise
  9. // request(HTTPMethod, uriPath, queries, body, headers, options);
  10. // options => {timeout}
  11. client.request('GET', '/regions');

使用云产品的SDK

当使用具体的云产品SDK时,请参考以下示例进行调用:

  1. // 引入SDK
  2. const Client = require('@alicloud/oam');
  3. // 创建实例
  4. const client = new Client({
  5. accessKeyId: '<ACCESS_KEY_ID>',
  6. secretAccessKey: '<ACCESS_KEY_SECRET>',
  7. securityToken: '', // 支持STS
  8. endpoint: 'ENDPOINT'
  9. });
  10. // 发起调用
  11. // 具体API,返回Promise
  12. client.addRoleCellToRole({
  13. RoleName: "role1",
  14. Resource: "*:*:*:*",
  15. ActionList: ["Read", "Write"],
  16. GrantOption: 0
  17. }, {timeout: 10000});

API参考

要知道您想访问的产品提供的API以及它们的参数,请参考云产品API开放列表

本文导读目录