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
通过Composer安装依赖:
composer require alibabacloud/sdk
4. 示例代码
说明
示例代码中的appKey需替换为您在步骤2中获取到的值。
您也可以使用可视化调试工具OpenAPI Explorer,获取代码示例。
<?php
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;
// Download:https://github.com/aliyun/openapi-sdk-php
// Usage:https://github.com/aliyun/openapi-sdk-php/blob/master/README.md
// 配置SDK Profile
// 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取AccessKey,来实现API访问的身份验证。
AlibabaCloud::accessKeyClient(getenv("CC_AK_ENV"), getenv("CC_SK_ENV"))
->regionId('cn-hangzhou')
->asDefaultClient();
try {
$result = AlibabaCloud::rpc()
->product('Push')
// ->scheme('https') // https | http
->version('2016-08-01')
->action('Push')
->method('POST')
->host('cloudpush.aliyuncs.com')
->options([
'query' => [
'RegionId' => "cn-hangzhou",
'AppKey' => "appKey",
'PushType' => "NOTICE",
'DeviceType' => "ALL",
'Target' => "DEVICE",
'TargetValue' => "deviceIds",
'Body' => "ALi Push Title",
'Title' => "Ali Push Body",
],
])
->request();
print_r($result->toArray());
} catch (ClientException $e) {
echo $e->getErrorMessage() . PHP_EOL;
} catch (ServerException $e) {
echo $e->getErrorMessage() . PHP_EOL;
}
反馈
- 本页导读 (0)
文档反馈