全部产品

GO

更新时间:2020-09-04 09:05:03

1. 获取AccessKey

为了保证云服务的安全,您需要创建一个能访问移动推送资源的RAM子账号,获取该子账号的AccessKey,并使用这个RAM子账号调用移动推送的OpenAPI。

操作步骤

  1. 创建RAM子账号,操作方法请参见创建RAM用户
  2. 授予RAM子账号管理移动推送(MPush)的权限,操作方法请参见为RAM用户授权
  3. 获取子账号的AccessKey信息请参见获取AccessKey

说明:AccessKey包含AccessKey ID和AccessKey Secret。

2. 获取AppKey

登录EMAS控制台,在首页我的产品模块单击您的应用,进入应用管理页面,应用管理页面即可查看AppKey。

3. 安装SDK

执行以下命令,安装Alibaba Cloud SDK for GO。

  • 使用go get方式安装:
  1. go get -u github.com/aliyun/alibaba-cloud-sdk-go/sdk
  • 使用glide get方式安装:
  1. glide get github.com/aliyun/alibaba-cloud-sdk-go

4. 示例代码

说明:示例代码中的accessKeyId、accessKeySecret、appKey需替换为您在2、3步骤中获取到的值。

您也可以使用可视化调试工具OpenAPI Explorer,获取代码示例。

  1. package main
  2. import (
  3. "fmt"
  4. "github.com/aliyun/alibaba-cloud-sdk-go/services/push"
  5. )
  6. func main() {
  7. client, err := push.NewClientWithAccessKey("cn-hangzhou", "<accessKeyId>", "<accessSecret>")
  8. request := push.CreatePushRequest()
  9. request.Scheme = "https"
  10. request.AppKey = "appKey"
  11. request.PushType = "NOTICE"
  12. request.DeviceType = "ALL"
  13. request.Target = "DEVICE"
  14. request.TargetValue = "deviceIds"
  15. request.Body = "ALi Push Body"
  16. request.Title = "ALi Push Title"
  17. response, err := client.Push(request)
  18. if err != nil {
  19. fmt.Print(err.Error())
  20. }
  21. fmt.Printf("response is %#v\n", response)
  22. }