微信公众平台“发生未知错误”的解决方法之一

最近想玩微信公众平台开发。
在填写服务器配置的时候,点击提交总也不通过,显示“发生未知错误,请重试”(大意如此);
搜了半天也没得到什么有用的东西,有很多答案居然是换个浏览器就可以了。然而我从Chrome到Firefox到Edge甚至IE都换过了,依然没有解决。

随后读了一下文档,猜想,该不是在提交配置的时候微信公众平台就要测试吧?
就快速写了一个客户端。按照文档方法加密验证签名。果然提交成功。

关键点在下面:

开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带参数如下表所示:

参数
描述
signature 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。
timestamp 时间戳
nonce 随机数
echostr 随机字符串

开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。加密/校验流程如下:

1)将token、timestamp、nonce三个参数进行字典序排序

2)将三个参数字符串拼接成一个字符串进行sha1加密

3)开发者获得加密后的字符串可与signature对比,标识该请求来源于微信

简单来说就是验证一下服务器。在提交服务器设置的时候你可以不用管这个验证过程,直接返回echostr即可。等配置提交完成了再实现也没问题。

 

所以微信你可否给一些更友好一点的错误提示呢?诸如“未能连接到你的服务器”?