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

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

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 和发送 客服消息

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

微信三方平台全网发布总结相关推荐

  1. 微信开放平台全网发布

    最近刚做了微信开放平台全网发布的开发,整理一下贴出来 前置条件 已经做好了相关的开发工作(比如扫码授权之类的),项目导入了微信SDK(最后会附上我自己用的SDK jar包) sdk jar 地址: h ...

  2. java微信第三方平台全网发布(三)

    在java微信第三方平台开发(二)中写了授权事件的处理,并且第三方平台代公众号发起网页授权,获取用户信息和发红包等基本业务.接下来代公众号处理消息和事件.这时候就需要用到在开发者资料中填写的公众号消息 ...

  3. 微信开放平台全网发布时,检测失败 —— C#

    主要就是三个:返回API文本消息,返回普通文本消息,发送事件消息   --会出现失败的情况 (后续补充说明:出现检测出错,不一定是代码出现了问题,也有可能是1.微信方面检测时出现服务器请求失败,2.我 ...

  4. 开放平台全网发布php,微信开放平台 全网发布 组件ticket检测失败

    api接口文本错误的 之前我也是遇到问题 困扰几天了终于搞好了 问题是这样解决的 发现有点坑爹 他这两个接口要求的code取值不一样 第三方平台方拿到$query_auth_code$的值后,通过接口 ...

  5. 微信开放平台(公众号第三方平台) -- 全网发布

    一.微信开放平台,第三方平台,全网发布怎么通 过?  二. 微信开放平台 全网发布 组件ticket检测失败?      解决步骤 1.将附件中的代码发布到你配置的域名下: 2.直接点全网发布: 3. ...

  6. 微信公众账号第三方平台全网发布源码(java)- 实战测试通过

    微信公众账号第三方平台全网发布源码(java)- 实战测试通过 (更多资料,关注论坛:www.jeecg.org) 技术交流请加:289709451.287090836 package org.jee ...

  7. 微信公众平台第三方平台全网发布 java

    小弟初次写,写的不好,大神多多关照 总共分为两部分: 1.授权,微信每10分钟会给第三方平台推送一次,这里有需要用到的 COMPONENT_VERIFY_TICKET,并且需要响应 success. ...

  8. mysql 推送微信公众号_10分钟完成微信公众号第三方平台全网发布

    背景:在微信公众平台配置服务器URL时,使用了新浪云SAE自带的二级域名,提交时出现一个安全风险的警告,网上查了下,许多服务平台和团队也遇到同样的问题. 经过一番研究 - 为什么会有安全风险的警告? ...

  9. 微信开放平台-第三方平台-全网发布接入【java版本】

    微信给出的文档 概述 在第三方平台方创建成功并最终开发测试完毕,提交全网发布申请时,微信服务器会通过自动化测试的方式,检测服务的基础逻辑是否可用,在确保基础可用的情况下,才会允许公众号第三方平台提交全 ...

最新文章

  1. day22_面向对象
  2. Codeforces 460E Roland and Rose(暴力)
  3. mysql分组函数按月份差,学习猿地-mysql如何按月份分组查询
  4. BEA Workshop Studio有什么用?
  5. java 主题爬虫_主题爬虫 - 长颈鹿Giraffe - 博客园
  6. list容器java_【Java容器】List容器使用方法及源码分析
  7. 搭建服务器Apache+PHP+MySql需要注意的问题
  8. QtCreate由MinGW编译的项目,换为MSVC编译器后编译无法通过
  9. Office 365系列之八:配置和体验Exchange和Lync
  10. 2021.C/C++静态代码分析工具
  11. ssas表格模型 权限控制_创建第一个SSAS表格模型数据库
  12. class中函数的this指向
  13. (转)马云:不要迷信成功学 要多看别人的失败经历
  14. NETBIOS/NETBEUI 协议 SAMBA
  15. 波场地址解析易语言代码
  16. 图像列表控制(CImageList)
  17. Xtend官方文档-第一部分
  18. import express from 'express'; ^^^^^^^ SyntaxError: Unexpected identifier at Module._com
  19. 动作游戏(ACT)——棱角战士(基于Unity3D 5.4.2)
  20. oracle升级版本矩阵图

热门文章

  1. sql实现同时向主表和子表插入数据方法
  2. 动手学AI——线性回归
  3. Zabbix Httpd漏洞修复
  4. java开发对学位证_软件开发人员真的需要学位吗?
  5. TeamViewer一个很好的免费远程控制软件
  6. Ubuntu18.04外接显示屏配置问题
  7. html把一张图片动态的代码,网站不收录怎么做才能有效果呢?
  8. 计算机考试准考证打印后
  9. Python:字符串操作1(去掉空格)
  10. 听大咖谈光伏产业如何“走出去”