微信接入验证Nodejs版例子程序

来源:互联网 发布:免费淘宝网店模板 编辑:程序博客网 时间:2024/06/05 09:35

微信接入验证Nodejs版例子程序

项目地址: https://github.com/windsome/node-wechat-check-signature.git

介绍

本程序按照微信公众平台开发者文档>开始开发>接入指南,进行开发。
微信使用第三方服务器时要求配置服务器
登录公众平台后,在 基本配置->填写服务器配置 中修改信息时要求填写的URL能正确响应微信发送的Token验证。修改完成后提交时,会去检测URL及TOKEN是否正确,验证正确后返回echostr即表示第三方服务器配置正确,否则错误,见 http://mp.weixin.qq.com/wiki/8/f9a0b8382e0b77d87b3bcc1ce6fbc104.html

微信已经提供了php版本,见 http://mp.weixin.qq.com/mpres/htmledition/res/wx_sample.20140819.zip ,但未提供nodejs版本。

这个验证只是为了确认第三方服务器能将微信服务器发的echostr原样返回(其实还不如不要,估计是微信不希望别人频繁改这个URL)。修改成功后,使用过程中可以将这部分删掉。

前置要求

1, 已经有一台云服务器,已在阿里云上购买
2, 要求有一个域名,已在阿里云上购买
3, 要求域名指向的空间已经备案,已在阿里云上备案

使用方法

以下操作得在服务器上运行,并且此服务器有符合微信要求的域名
1:下载项目
git clone https://github.com/windsome/node-wechat-check-signature.git
2:修改checkSign.js中的TOKEN,修改成你自己在微信中填的那个。
3:npm install
4:sudo npm start
5:再去微信中修改URL为 http://wx.qingshansi.cn/weixin ,提交验证即可
6:之后开发中的微信机器人等也用这个URL

问题列表

1, 修改完配置提交时,提示 “请求URL超时”,有多种可能性。
a)URL写的不对,微信不能访问到
b)域名解析不对,可能刚修改完域名指向,DNS还未全部解析。如果用阿里云的解析,修改完域名地址对应后,需要大概10分钟,微信端服务器才会解析到新的ip地址。
c)服务器在公司内网或者家庭网的内网中,这种服务器响应慢,微信的请求根本就到不了自己的服务器,解决办法是使用阿里云或腾讯云。(我在这里纠结很久,把网站部署到公司内部的老观念不行了。)
d)服务器没有备案,请求会发到服务器,并且也会被成功执行,但阿里云上没备案的网站会返回阿里云的界面,微信就收不到期望的echostr。

0 0
原创粉丝点击