赞
踩
这个代码要丢到自己的云服务器里面
#!/usr/bin/env python # -*- coding: utf-8 -*- ''' @time : 2022/7/1 @Author : LL @File : win_xin.py ''' def get_ip(): '''获取本机ip地址''' import socket res = socket.gethostbyname(socket.gethostname()) return res from flask import Flask,request,abort import hashlib #常量 WECHAT_TOKEN = "xxxx" app = Flask(__name__) @app.route('/') def h(): return '2121' @app.route('/wechat',methods=['GET','POST']) def wechat(): '''对接微信公众号''' #参数是在请求链接后携带的 #微信的签名 print(request.args) signature = request.args.get("signature") #我们签名所需的两个参数 timestamp = request.args.get("timestamp") nonce = request.args.get("nonce") #签名校验成功后需返回给微信的 echostr = request.args.get("echostr") #参数校验 if not all([signature, timestamp, nonce]): abort(400) #开始签名 #将数据添加进数组 li = [WECHAT_TOKEN, timestamp, nonce] #排序 li.sort() #拼接字符串 #不编码的话python会报错 tmp_str = "".join(li).encode('utf-8') #进行sha1加密 sign = hashlib.sha1(tmp_str).hexdigest() #将自己的签名与微信进行对比 if signature != sign: abort(403) #如果签名与微信的一致需返回echostr给微信 else: return echostr if __name__ == '__main__': #80端口 app.run(host='0.0.0.0',port=80,debug=True)
至于flask的liunx环境什么的就自行百度了
设置的2个核心参数,一个url,一个token。token在代码里面设置就行了,代码会处理加密
服务器后台运行python
nohup python3 -u win_xin.py > /test/lxrun.log 2>&1 &
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。