微信三方平台全网发布总结

相信很多第一次玩三方平台全网发布的童鞋同会遇到很多问题。这里将这两天我们在全网发布测试中遇到的问题做个总结,希望对大家有用:

在这里首先感慨一下微信有点店大欺客的感觉,文档写的确实不咋地,包括微信支付之类的文档也有类似的问题:

1. 写得不够清晰,没有站在开发者的角度思考。

2. 没有正常的寻求帮助通道,提供的只是 发送问题到 weixin-open@qq.com 也没有回应,微信官方的开发者论坛也没有相应的内容。

3. 微信开发相关的问题很难再baidu上得到正确的回答,一般都要vpn上谷歌才有较有用的结果(个人看法)

希望微信未来做得更好。

废话不说,先来看我们遇到的问题:

问题1. 全网发布是,弹窗提示系统异常,没有具体的的步骤信息(忘记截图,改天有截图再上传)的时候,大概率是微信测试平台自己出问题了,出现异常。这种时候除非非常紧急,否则不用重复尝试,因为没有足够的提示,很难有进展。

问题2. 等了一天,总算出现提示了(估计是微信开发或者运维修复了),提示

这种情况多半是,没有正确回复 "success". 也许你会觉得发布之前的comphonent_verify_ticket能正常接收啊,其实是因为微信没有告诉你你有无正确回复 success,所以让你觉得是正确回复了,其实不然。

如果正确回复,针对Java,Spring平台,一定要用:

PrintWriter out = response.getWriter();
out.write("success");
out.close();

另外,一定要注意,在这里检测的是微信每10分钟推送的 comphonent_verify_ticket 有无正确回复 "success",而不是文档说的微信测试过程中会模拟推送 comphonent_verify_ticket 消息过来 。

所以这个时候你看到的微信调用过程是:

step 1.  [2018-03-28 10:31:34] 微信 ->  
<InfoType><![CDATA[authorized]]></InfoType><AuthorizerAppid><![CDATA[wxd101a85aa106f53e]]></AuthorizerAppid>

step 2. 

[2018-03-28 10:31:41] 微信 -> 
<FromUserName><![CDATA[oV6P70DM0-NBLoiQKb2JISwLhR80]]></FromUserName>
<CreateTime> 1522204301 </CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[QUERY_AUTH_CODE:queryauthcode@@@w9W2dkbjtYSTiJUcVzBm0ipE0kRHD_BAHUWuVmIsvXVxUA3Z6gqwFpuzqpsateKcKUjRdid3DdU410kLRj-L0g]]></Content>
<MsgId>6537817691085251236</MsgId>

</xml>

step 3. [2018-03-28 10:31:41] 微信 -> 

<CreateTime>1522204301</CreateTime>
<InfoType><![CDATA[unauthorized]]></InfoType><AuthorizerAppid><![CDATA[wxd101a85aa106f53e]]></AuthorizerAppid></xml>

同时这时候无论是你获取 authorizer_access_token,还是获取到了authorizer_access_token调用发送都会提示:
{"errcode":61007,"errmsg":"api is unauthorized to component hint: [7EmwDA0158sza4!]"}

这是因为你在调用这些接口时微信检测到comphonent_verify_ticket 回复失败,在发送QUERY_AUTH_CODE:$query_auth_code$ 的时候就回收了公众号的授权,也就是几乎同时发送了 unauthorized 事件。


总结:最终微信正确的流程是:

1. 给你服务器发送 authorized 事件:

2. 给你发送 QUERY_AUTH_CODE text 消息,

3. 检测 每10分钟的 comphonent_verify_ticket 事件是否正确回复 success

    正确:-> 检测是否正确回复 客服消息

    不正确:-> 直接发送 unauthorized 事件,让你无法获取:authorizer_access_token 和发送 客服消息

这个过程跟文档中说的不一致,让很多人采坑。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值