512
iPhone_iPad_Mac_手机_平板_苹果apple
Subscription操作__主题接口规范_API使用手册_消息服务-阿里云
描述
该接口用于订阅主题,创建 Subscription。
Subscription 名称是一个不超过 256 个字符的字符串,必须以字母或者数字为首字符,剩余部分可以包含字母、数字和横华线(-)。
创建Subscription 时,需要指定对应的 Endpoint,否则不合法,目前支持HttpEndpoint。
Request
Request 的构造主要由以下几部分组成:
请求行
PUT /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
特有 Request Header
无,请参考 调用方式/公共参数
Request Body
Request Body 为 XML 格式,XML 总包含创建 Subscription 的属性。
参数名称 | 说明 | 参数值 | 选项 |
---|---|---|---|
Endpoint | 描述此次订阅中接收消息的终端地址 | 目前三种Endpoint: 1. HttpEndpoint,必须以”https://"为前缀 2. QueueEndpoint, 格式为acs:mns:{REGION}:{AccountID}:queues/{QueueName} 3. MailEndpoint, 格式为mail:directmail:{MailAddress} | Required |
FilterTag | 描述了该订阅中消息过滤的标签(标签一致的消息才会被推送) | 不超过16个字符的字符串,默认不进行消息过滤 | Optional |
NotifyStrategy | 描述了向 Endpoint 推送消息出现错误时的重试策略 | BACKOFF_RETRY 或者 EXPONENTIAL_DECAY_RETRY,默认为BACKOFF_RETRY,重试策略的具体描述请参考 基本概念/NotifyStrategy | Optional |
NotifyContentFormat | 描述了向 Endpoint 推送的消息格式 | XML 、JSON 或者 SIMPLIFIED,默认为 XML,消息格式的具体描述请参考 基本概念/NotifyContentFormat | Optional |
Response
返回消息由返回状态行、HTTP头和消息体三部分组成
HTTP Status Code
HTTP/1.1 201
同一个订阅者在同一个主题下的 Subscription 不能重名,当出现重名时,如果正在创建的 Subscription 已经存在的 Subscription 属性完全相同,返回 204,否则返回 409 (Conflict)。特有 Response Header
参数名称 | 说明 |
---|---|
Location | 返回创建成功的 SubscriptionURL,格式如下:https://$AccountId.mns.cn-hangzhou.aliyuncs.com/topics/$TopicName/subscriptions/$SubscriptionName |
其它 Response Header 请参考 调用方式/公共参数
- Response Body
无
Special Error
错误代码 | 错误信息 | 状态码 |
---|---|---|
SubscriptionNameLengthError | Subscription name length is out of range, should be between 1 and 256. | 400 |
SubscriptionNameInvalid | The subscription you provided is invalid. SubscriptionName should start with alpha or digit, and contain only alpha, digit or -. | 400 |
SubscriptionAlreadyExist | The subscription you want to create already exists. | 409 |
EndpointInvalid | The endpoint you provided is invalid. | 400 |
InvalidArgument | The length of filter tag should be between 1 and 16. | 400 |
请求示例:
PUT /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:06:46 GMT
Authorization:MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscription xmlns="https://mns.aliyuncs.com/doc/v1/">
<Endpoint>https://company.com</Endpoint>
<NotifyStrategy>BACKOFF_RETRY</NotifyStrategy>
<NotifyContentFormat>SIMPLIFIED</NotifyContentFormat>
<FilterTag>important</FilterTag>
</Subscription>
返回示例:
HTTP/1.1 201
x-mns-request-id:56667376B2B71C9C16000025
x-mns-version: 2015-06-06
Location: https://$AccountId.mns.cn-hangzhou.aliyuncs.com/topics/$TopicName/subscriptions/$SubscriptionName
SetSubscriptionAttributes
描述
该接口用于修改 Subscription 的属性
Request
Request 的构造主要由以下几个部分组成:
请求行
PUT /topics/$TopicName/subscriptions/$SubscriptionName?metaoverride=true HTTP/1.1
特有 URI 参数
metaoverride=true 将会修改 Subscription 的属性
特有 Request Header
无,请参考 调用方式/公共参数
Request Body
Request Body 为 XML 格式,XML 中包含修改 Subscription 的属性:
参数名称 | 说明 | 参数值 | 选项 |
---|---|---|---|
NotifyStrategy | 描述了向 Endpoint 推送消息出现错误时的重试策略 | BACKOFF_RETRY 或者 EXPONENTIAL_DECAY_RETRY,默认为BACKOFF_RETRY,重试策略的具体描述请参考 基本概念/NotifyStrategy | Optional |
Response
返回消息由返回状态行、HTTP头和消息体三部分
HTTP Status Code
HTTP/1.1 204 No Content
特有 Response Header
无,请参考 调用方式/公共参数
Response Body
无
Special Error:
错误代码 | 错误消息 | 状态码 |
---|---|---|
SubscriptionNotExist | The subscription you provided does not exits. | 404 |
请求示例:
PUT /topics/$TopicName/subscriptions/$SubscriptionName?metaoverride=true HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:09:22 GMT
Authorization: MNS 15B4D3461F177624206A:rNT4xclLS297/n0UFYIezzHJI7Q=
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscription xmlns="https://mns.aliyuncs.com/doc/v1/">
<NotifyStrategy>BACKOFF_RETRY</ NotifyStrategy>
</Subscription>
返回示例:
HTTP/1.1 204 No Content
x-mns-request-id:56667412B2B71C9C16000027
x-mns-version: 2015-06-06
GetSubscriptionAttributes
描述
该接口用于获取 Subscription 的属性
Request
Request 的构造主要由以下几个部分组成:
请求行
GET /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
特有 Request Header
无,请参考 调用方式/公共参数
Request Body
无
Response
返回消息由返回状态行、HTTP头和消息三部分组成
HTTP Status Code
HTTP/1.1 200 OK
特有 Response Header
无,请参考 调用方式/公共参数
Response Body
参数名称 | 说明 |
---|---|
SubscriptionName | Subscription 的名称 |
Subscriber | Subscription 订阅者的 AccountId |
TopicOwner | Subscription 订阅的主题所有者的 AccountId |
TopicName | Subscription 订阅的主题名称 |
Endpoint | 订阅的终端地址 |
NotifyStrategy | 向 Endpoint 推送消息错误时的重试策略 |
NotifyContentFormat | 向 Endpoint 推送的消息内容格式 |
FilterTag | 描述了该订阅中消息过滤的标签(仅标签一致的消息才会被推送) |
CreateTime | Subscription 的创建时间,从 1970-1-1 00:00:00 到现在的秒值 |
LastModifyTime | 修改 Subscription 属性信息最近时间,从 1970-1-1 00:00:00 到现在的秒值 |
Special Error
错误代码 | 错误信息 | 状态码 |
---|---|---|
SubscriberNotExist | The subscription you provided does not exist. | 404 |
请求示例:
GET /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:09:58 GMT
Authorization: MNS 15B4D3461F177624206A:GvaApggLQfMu6B6W5sbF6HEjV6Y=
x-mns-version: 2015-06-06
返回示例:
HTTP/1.1 200 OK
Content-Type=text/xml;utf-8
Content-Length:451
x-mns-request-id:56667436B2B71C9C16000029
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscription xmlns="https://mns.aliyuncs.com/doc/v1">
<CreateTime>1449554806</CreateTime>
<Endpoint>https://company.com</Endpoint>
<FilterTag>important</FilterTag>
<LastModifyTime>1449554962</LastModifyTime>
<NotifyContentFormat>XML</NotifyContentFormat>
<NotifyStrategy>BACKOFF_RETRY</NotifyStrategy>
<SubscriptionName>$SubscriptionName</SubscriptionName>
<Subscriber>$Subscriber</Subscriber>
<TopicName>$TopicName</TopicName>
<TopicOwner>$TopicOwner</TopicOwner>
</Subscription>
Unsubscribe
描述
该接口用于取消一个已创建的 Subscription。
Request
Request 的构造主要由以下几个部分组成:
请求行
DELETE /topics/$TopicName/subscriptions/$SubscriptionName HTTP/1.1
特有 Request Header
无,请参考 调用方式/公共参数
Request Body
无
Response
返回消息由返回状态行、HTTP头和消息体三部分组成
HTTP Status Code
HTTP/1.1 204 No Content
如果 Unsubscribe 的 Subscription 不存在,返回 204,取消订阅成功特有 Response Header
无,请参考 调用方式/公共参数
Response Body
无
请求示例:
DELETE /topics/$TopicName/Subscriptions/$SubscriptionName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:18:04 GMT
Authorization: MNS 15B4D3461F177624206A:UOEb7OmC9GX7G9BLY3XryP6vtjQ=
x-mns-version: 2015-06-06
返回示例:
HTTP/1.1 204 No Content
x-mns-request-id: 5666761CB2B71C9C16000035
x-mns-version: 2015-06-06
ListSubscriptionByTopic
描述
该接口用于列出某个主题下的 Subscription 列表,可分页获取数据。
Tips:
如果本次请求结果返回的 Subscription 总数超过本次请求的 x-mns-ret-number 参数值,返回的 XML 结果中包含的 NextMarker 表示下一页开始位置,在下一次请求时将该值赋予 x-mns-marker 参数以返回下一页的结果。
Request
Request 的构造主要由以下几个部分组成:
请求行
GET /topics/$TopicName/subscriptions HTTP/1.1
特有 Request Header
参数名称 | 说明 | 选项 |
---|---|---|
x-mns-prefix | 按照该前缀开头的 SubscriptionName 进行查找 | Optional |
x-mns-marker | 请求下一个分页的开始位置,从上次分页结果返回的 NextMarker 获取 | Optional |
x-mns-ret-number | 单次请求结果的最大返回个数,1 - 1000 范围内的整数值,默认值为 1000 | Optional |
其它 Request Header 请参考 调用方式/公共参数
- Request Body
无
Response
返回消息由返回状态行、HTTP头和消息体三部分组成
HTTP Status Code
HTTP/1.1 200 OK
特有 Response Header
无,请参考 调用方式/公共参数
Response Body
返回 XML 格式的结果,顶层 Subscriptions 元素下包含多个 Subscription 元素,Subscription 元素中包含 SubscriptionURL,SubscriptionURL 表示 Subscription 的 URL 访问地址。如果返回结果超过 x-mns-ret-number 的参数值,包含 NextMarker 元素表示下个分页的起始位置。
请求示例:
GET /topics/$TopicName/subscriptions HTTP/1.1
x-mns-ret-number:2
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Tue, 08 Dec 2015 06:16:18 GMT
Authorization: MNS 15B4D3461F177624206A:dXSLY5yGG8Ri5f26ZEmxMCq1CC4=
x-mns-version: 2015-06-06
返回示例:
HTTP/1.1 200 OK
x-mns-request-id:566675B2B2B71C9C16000033
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="utf-8"?>
<Subscriptions xmlns="https://mns.aliyuncs.com/doc/v1/">
<Subscription>
<SubscriptionURL>https://$AccountId.mns.cn-hangzhou.aliyuncs.com/$TopicName/subscriptions/$SubscriptionName1</SubscriptionURL>
</Subscription>
<Subscription>
<SubscriptionURL>https://$AccountId.mns.cn-hangzhou.aliyuncs.com/$TopicName/subscriptions/$SubscriptionName2</SubscriptionURL>
</Subscription>
<NextMarker>OTczNjU4MTcvYmRwejd6NXluby8yNjg0Mi9+fn5FI1Rlc3RUb3BpYy0xI2JkcHo3ejV5bm8jVGVzdFN1Yi0zLzA=</NextMarker>
</Subscriptions>
最后更新:2016-11-23 17:16:04
上一篇:
Topic操作__主题接口规范_API使用手册_消息服务-阿里云
下一篇:
Message操作__主题接口规范_API使用手册_消息服务-阿里云
怎样为一个子用户授予只读访问SLB的权限___负载均衡(SLB)授权问题_授权常见问题_访问控制-阿里云
查询Pipeline__Pipeline管理_Console参考手册_数据集成-阿里云
查询时刻网络带宽__资源监控接口_API 手册_CDN-阿里云
修改物理专线属性__高速通道相关接口_API 参考_云服务器 ECS-阿里云
如何跨项目配置任务依赖__用户常见问题反馈_常见问题_大数据开发套件-阿里云
查询执行计划详情__执行计划_API参考_E-MapReduce-阿里云
如何变更实名认证信息__实名认证_帐号实名认证_会员账号&实名认证-阿里云
检索数据__从 SQL 到 NoSQL_快速入门_表格存储-阿里云
OSS图形化界面__使用阿里云图形界面_使用手册_Eclipse 插件-阿里云
公测服务条款__服务条款_云数据库 PetaData-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云