消息推送服务

跳转到: 导航, 搜索
第1行: 第1行:
 
==消息推送服务概述==
 
==消息推送服务概述==
 
 
当一个和V用户相关的消息或者事件发生时(如某个用户向V用户发送消息),微博服务器将POST消息数据包到开发者填写的URL上;
 
当一个和V用户相关的消息或者事件发生时(如某个用户向V用户发送消息),微博服务器将POST消息数据包到开发者填写的URL上;
  
*1、建立首次连接
+
在开发者首次使用事件推送服务时,需要先通过一次校验来和微博服务器建立首次连接;微博服务器发送GET请求到开发者填写的URL上,校验参数如下表所示:
在开发者首次使用事件推送服务时,需要先通过一次校验来和微博服务器建立首次连接,具体来说:
+
 
+
微博服务器发送GET请求到开发者填写的URL上,校验参数如下表所示:
+
 
{| border="1" cellspacing="0" cellpadding="0" width="100%" class="parameters" style="border-color:#CCCCCC;"
 
{| border="1" cellspacing="0" cellpadding="0" width="100%" class="parameters" style="border-color:#CCCCCC;"
 
|-
 
|-
第12行: 第8行:
 
!width="10%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段类型
 
!width="10%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段类型
 
!width="70%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段说明
 
!width="70%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段说明
{{rdes_args|signature|string|微博加密签名,signature结合了开发者的token(或者appsecret参数)和请求中的timestamp参数,nonce参数}}
+
{{rdes_args|signature|string|微博加密签名,signature结合了开发者appsecret参数和请求中的timestamp参数,nonce参数}}
 
{{rdes_args|timestamp|string|时间戳}}
 
{{rdes_args|timestamp|string|时间戳}}
 
{{rdes_args|nonce|string|随机数}}
 
{{rdes_args|nonce|string|随机数}}
 
{{rdes_args|echostr|string|随机字符串}}
 
{{rdes_args|echostr|string|随机字符串}}
 
|}
 
|}
 +
signature参数的加密规则为:将appsecret参数,timestamp参数,nonce参数进行字典排序后,将三个参数字符串拼接成一个字符串进行sha1加密;开发者收到请求后,首先通过加密后的signature参数来校验GET请求的真实性,如果确认此次GET请求来自微博服务器,原样返回echostr参数内容就可以成功建立首次连接,否则连接失败。
  
 
+
建立首次连接后,后续每次微博事件推送时也都会带上signature、timestamp、nonce三个参数,开发者依然可以通过对signature的校验判断此条消息的真实性。校验方式与首次建立连接一致。
 
+
*2、后续连接
+
 
+
 
+
  
 
==接受普通消息==
 
==接受普通消息==

2014年3月30日 (日) 07:07的版本

目录

消息推送服务概述

当一个和V用户相关的消息或者事件发生时(如某个用户向V用户发送消息),微博服务器将POST消息数据包到开发者填写的URL上;

在开发者首次使用事件推送服务时,需要先通过一次校验来和微博服务器建立首次连接;微博服务器发送GET请求到开发者填写的URL上,校验参数如下表所示:

校验参数字段 字段类型 字段说明
signature string 微博加密签名,signature结合了开发者appsecret参数和请求中的timestamp参数,nonce参数
timestamp string 时间戳
nonce string 随机数
echostr string 随机字符串

signature参数的加密规则为:将appsecret参数,timestamp参数,nonce参数进行字典排序后,将三个参数字符串拼接成一个字符串进行sha1加密;开发者收到请求后,首先通过加密后的signature参数来校验GET请求的真实性,如果确认此次GET请求来自微博服务器,原样返回echostr参数内容就可以成功建立首次连接,否则连接失败。

建立首次连接后,后续每次微博事件推送时也都会带上signature、timestamp、nonce三个参数,开发者依然可以通过对signature的校验判断此条消息的真实性。校验方式与首次建立连接一致。

接受普通消息

(1)个人版

(2)企业版


接受事件推送

应用的创建及发布包括以下流程。 注:开发者在平台创建应用时可选择应用适用终端,开发时对相应地址进行适配即可在各终端iframe中展示。


(1) 成为开发者

填写开发者信息,成为开发者:http://open.weibo.com/developers/basicinfo

通过审核成为开发者后,即可开发Page应用。


XML格式兼容模式

主要是BD合作引入,步骤为:

(1) 商务沟通

    • - 双方沟通产品结合点
    • - 确立合作意向


(2) 产品沟通

    • - 确认结合点在产品、技术层面可实现
    • - 确认产品表现方式


(3) 应用开发

    • - 快速完成线上申请
    • - 根据文档和规范进行开发


(4) 应用上线及推广

    • - 应用审核通过上线
    • - 确认双方推广资源及推广方式