调用GetMessageToken获取长连接建连Token,客户端可以用此Token通过LWP协议和各个原子能力进行长连接通信。

使用说明

先获取客户端UserId、DeviceId、DeviceType信息,然后传入到服务端,服务端使用该接口获取鉴权Token,并返回给客户端。不同的用户需要使用不同的UserId,不同的终端设备需要使用不同的DeviceId。

QPS限制

本接口的单用户QPS限制为100次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见QPS限制

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String GetMessageToken

系统规定参数。取值:GetMessageToken

AppId String a494caec-***-695ef345db77

互动消息应用ID。

DeviceId String a494caec-***-695ef345db77

终端设备ID,唯一代表一个用户终端设备,用户自定义。小写英文、数字、下划线(_)和短横线(-)组成,最大长度64个字符。不同终端设备需要使用不同的DeviceId,建议从终端设备获取并传入给服务端。

DeviceType String android

终端设备类型,取值:

  • ios
  • android
  • web
  • pc
UserId String de1**a0

用户UserId,用户自定义,在AppId下单独唯一。小写英文、数字、下划线(_)和小数点(.)组成,最大长度32个字符。不同的用户需要使用不同的UserId。

返回数据

名称 类型 示例值 描述
RequestId String 16A96B9A-****-CB92E68F4CD8

请求ID。

Result Object

返回结果。

AccessToken String oauth_cloud_key:***-b0YY5Gy6Q

用于长连接建连的Token。

RefreshToken String oauth_cloud_key:****-Q62xggOTdgk3gw=

更新Token,若AccessToken过期,则可以使用RefreshToken再次获取新Token。

AccessTokenExpiredTime Long 86400000

登录Token过期时间,单位:毫秒。

示例

请求示例

http(s)://live.aliyuncs.com/?Action=GetMessageToken
&AppId=a494caec-***-695ef345db77
&DeviceId=a494caec-***-695ef345db77
&DeviceType=Android
&UserId=de1**a0
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<GetMessageTokenResponse>
    <RequestId>16A96B9A-****-CB92E68F4CD8</RequestId>
    <Result>
        <AccessToken>oauth_cloud_key:***-b0YY5Gy6Q</AccessToken>
        <RefreshToken>oauth_cloud_key:****-Q62xggOTdgk3gw=</RefreshToken>
        <AccessTokenExpiredTime>86400000</AccessTokenExpiredTime>
    </Result>
</GetMessageTokenResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "16A96B9A-****-CB92E68F4CD8",
  "Result" : {
    "AccessToken" : "oauth_cloud_key:***-b0YY5Gy6Q",
    "RefreshToken" : "oauth_cloud_key:****-Q62xggOTdgk3gw=",
    "AccessTokenExpiredTime" : 86400000
  }
}

错误码

访问错误中心查看更多错误码。