无极山鬼谣
2015-10-24 11:44
老师,验证判断这边if( $str == $signature && $echostr )又加了一个 && $echostr 我不理解这个加来干嘛,$echostr这个条件永远也不会成立啊,故意让它不成立,来执行else ? 是等验证通过后加上去吗?
这是因为,在做接口配置时微信后台服务器会发送四个参数signature、nonce、timestamp、echostr给你的公众号,前面三个参数用于验证消息是否来自微信后台,当验证成功时返回echostr给微信后台服务器,已确定接口配置成功。但是接口配置只在第一次设置时会用到,平时用户发送消息给公众号时,微信后台服务器只会发送前三个参数给公众号(公众号无须回复echostr),于是在此加入判断,微信后台服务器发送参数中有echostr时作为接口配置处理,否则作为用户发送消息处理。这是我的理解,希望能帮到你,如有错误,请指出。
哦,我知道了,第二个条件是,$echostr是否存在的意思,我一时没理解
PHP实现微信公众平台开发—提升篇
64928 学习 · 258 问题
相似问题