微信您的服务器没有正确响应令牌验证

时间:2014-05-17 06:42:22

标签: php wechat

如果您是微信开发人员,可以帮我解决下面的问题吗?

首先,当我需要提交表格时,我输入了我的听众网址&表单上的随机字符串标记。当我按下提交时,会出现以下信息。

  

您的服务器没有正确回复令牌验证。请   请参阅Message API Guide

我实际怀疑的是我在函数中返回的数据。

我试图回归' true' / return' false'这是STRING格式 以JSON格式返回json_encode(array(true))/ json_encode(array(true))

两者也没有用,我可以知道微信此时接受了什么样的回应?如果你能帮助我,我真的很感激。谢谢!

2 个答案:

答案 0 :(得分:2)

您应该响应一个名为echostr的请求参数,该参数由微信发送,以便您的服务器进行正确的身份验证。此时您不应发送任何其他数据。实质上,这就是发生的事情。

微信在请求中发送以下参数:    签名(3个嵌套参数的散列字符串),令牌(你提供这个),时间戳(unix时间戳),nonce(随机字符串),echostr

然后执行以下操作:    - 使用时间戳,随机数,令牌并将它们组合成一个arrray,按字母顺序对数组进行排序并将其转换为字符串并使用sha1

- 将该字符串与签名参数进行比较。

- 如果匹配,请回复echostr param的微信。

确保您没有发送任何其他信息,例如打印到屏幕等。

答案 1 :(得分:0)

您使用的服务器编程语言是什么?

如果是PHP,您可以在微信支持页面上查看示例代码。

我们使用Django作为服务器,它的工作原理。

一个经验教训是,一些服务器可能会缓慢响应(超过5秒)无法通过微信令牌验证。你可以检查任何其他人之前使用同一平台。

我们的办公室服务器无法运行,但IDC托管服务器正常运行。