xinhao 2019-12-20
CentOS7 自带 Python2.7, 我用的是Python3.6.5,需要CentOS7安装配置Python3并和Python2共存的,请看以下教程:
pip install web.py
可以换国内源下载,速度比较快
yum install libxml2 yum install libxslt yum install lxml python
我们写两个模块来处理验证token,一个main.py,一个handle.py
# main.py import web from handle import Handle urls = ( '/wx', 'Handle' # 映射 ) if __name__ == '__main__': app = web.application(urls, globals()) app.run()
# handle.py import hashlib import web class Handle(object): def POST(self): pass # get方法,验证token def GET(self): try: data = web.input() if len(data) == 0: return "success!" signature = data.signature timestamp = data.timestamp nonce = data.nonce echostr = data.echostr token = "demo" # 请按照公众平台官网\基本配置中信息填写,两个token保持一致 list = [token, timestamp, nonce] list.sort() sha1 = hashlib.sha1() sha1.update(list[0].encode("utf-8")) sha1.update(list[1].encode("utf-8")) sha1.update(list[2].encode("utf-8")) hashcode = sha1.hexdigest() # 获取加密串 # 验证 print("handle/GET func: hashcode, signature: ", hashcode, signature) if hashcode == signature: return echostr else: return "" except Exception as Argument: return Argument
执行命令,注意要开放80端口,端口不要被占用
python main.py 80
打开浏览器访问url:http://外网IP/wx
如果成功网页会显示get方法中返回的字符串: success!
登录微信公众平台,网页左下角开发栏点击基本配置,如图:
然后根据提示填入相关信息,最后点击提交按钮就好啦
配置成功后要在服务器配置那里点一下启用,如图,可随时更改配置,启用或者停用服务器
过程中遇到了各种各样的坑,有空再来更新。。