1. 获取AccessKey
为了保证云服务的安全,您需要创建一个能访问移动推送资源的RAM子账号,获取该子账号的AccessKey,并使用这个RAM子账号调用移动推送的OpenAPI。
操作步骤:
创建RAM子账号,操作方法请参见创建RAM用户,
授予RAM子账号管理移动推送(MPush)的权限,操作方法请参见为RAM用户授权。
获取子账号的AccessKey信息请参见获取AccessKey。
重要
AccessKey包含AccessKey ID和AccessKey Secret。
调用接口前,需配置环境变量,通过环境变量读取访问凭证。配置方法:
export CC_AK_ENV=<access_key_id> export CC_SK_ENV=<access_key_secret>
<access_key_id>替换为您RAM用户的AccessKey ID,<access_key_secret>替换为AccessKey Secret。
2. 获取AppKey
登录EMAS控制台,在首页我的产品模块单击您的应用,进入应用管理页面,应用管理页面即可查看AppKey。
3. 安装SDK
阿里云Node.js SDK适用于大于Node.js 8.x的LTS版本。您可以通过执行命令node -v
查看Node.js的版本。
使用npm
来完成Node.js依赖模块的安装,所有阿里云官方的Node.js SDK都位于 @alicloud
下。
npm install @alicloud/pop-core --save
4. 示例代码
说明
示例代码中的appKey需替换为您在步骤2中获取到的值。
您也可以使用可视化调试工具OpenAPI Explorer,获取代码示例。
const Core = require('@alicloud/pop-core');
// 配置SDK Profile
// 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取AccessKey,来实现API访问的身份验证。
var client = new Core({
accessKeyId: process.env.CC_AK_ENV,
accessKeySecret: process.env.CC_SK_ENV,
endpoint: 'https://cloudpush.aliyuncs.com',
apiVersion: '2016-08-01'
});
var params = {
"RegionId": "cn-hangzhou",
"AppKey": "appKey",
"PushType": "NOTICE",
"DeviceType": "ALL",
"Target": "DEVICE",
"TargetValue": "deviceIds",
"Body": "ALi Push Body",
"Title": "ALi Push Title"
}
var requestOption = {
method: 'POST',
formatParams: false
};
client.request('Push', params, requestOption).then((result) => {
console.log(JSON.stringify(result));
}, (ex) => {
console.log(ex);
})
文档内容是否对您有帮助?