nervouna
V2EX  ›  微信

自己搭的微信公众号收到消息没反应,看日志发现微信服务器 POST 过来的不是消息内容而是验证信息,这是为啥?

  •  
  •   nervouna · Apr 13, 2013 · 13422 views
    This topic created in 4849 days ago, the information mentioned may be changed or developed.
    如题,本来在启用开发者模式的时候已经验证过一次了,难道是每次收发消息都要验证一下吗=。= 刚刚改了下代码,已经给 POST 过来的验证信息回复了 echostr,但再试还是收不到消息内容,永远都是 POST /wechat?signature=……
    4 replies    1970-01-01 08:00:00 +08:00
    qiayue
        1
    qiayue  
       Apr 13, 2013   ❤️ 1
    每次微信接收到消息,post到你服务器时,都会带上?小尾巴,用于验证,这是为了防止他人冒充微信给你发数据。
    收不到消息内容可能是你返回去的xml格式不正确,仔细检查一下。
    记得以前微信官方php示例是有3处错误的,需要你自己改,不知道现在官方修正了没有。
    qiayue
        2
    qiayue  
       Apr 13, 2013   ❤️ 1
    另外,只有第一次验证的时候需要打印 echostr ,之后接收post消息只需要做验证(不验证也可以)然后返回xml格式数据即可,不需要打印 echostr 。
    nervouna
        3
    nervouna  
    OP
       Apr 13, 2013
    @qiayue 谢谢!我检查一下返回值。
    nervouna
        4
    nervouna  
    OP
       Apr 13, 2013
    @qiayue -_,- 的确是 xml 的问题,已经解决了,谢谢〜
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1026 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 18:48 · PVG 02:48 · LAX 11:48 · JFK 14:48
    ♥ Do have faith in what you're doing.