Flask在新浪SAE部署服务 写微信公众平台回复的功能
来源:互联网 发布:淘宝店铺导航设置 编辑:程序博客网 时间:2024/06/06 03:06
书接上文。
myapp.py代码:
# encoding=utf-8 注释可用中文from flask import Flask, request, make_responseimport hashlibimport xml.etree.ElementTree as ETimport timeapp = Flask(__name__)app.debug = True@app.route('/')def hello_world(): return 'Hello World!'@app.route('/weixin', methods=['GET', 'POST'])def check(): if request.method == 'GET': #如果是get方法--从服务器请求数据 token = r'cdedunews' # 这里的cdedunews就是微信里的token query = request.args #请求链接中的参数 signature = query.get('signature', '') echostr = query.get('echostr', '') timestamp = query.get('timestamp', '') nonce = query.get('nonce', '') s = [timestamp, nonce, token] s.sort() s = ''.join(s) if (hashlib.sha1(s).hexdigest()==signature): return make_response(echostr) else: return "Access denied." else: #如果是post方法--向服务器提交数据 xml_recv = ET.fromstring(request.data) #获取用户发送的原始数据 ToUserName = xml_recv.find("ToUserName").text #获取之前发送的 目标用户(公众号) FromUserName = xml_recv.find("FromUserName").text #获取之前的 消息来源用户 Content = xml_recv.find("Content").text #获取之前 向服务器发送的消息 #构造xml格式,回复内容 reply = """<xml> <ToUserName> <![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[%s]]></Content> </xml>""" response = make_response(reply % (FromUserName, ToUserName, str(int(time.time())), Content)) response.content_type = 'application/xml' return response #返回这个xml消息if __name__ == '__main__': app.run()
以上代码,在微信公众号已实现将原内容原封不动回复。
之前遇到的,该公众号暂时无法什么什么,是因为<XML>这种格式的语言,中间不能加空格,否则服务器认,微信这边返回不认。
调试,在微信公众号里面--开发--运维中心--日志查询--公众号被动回复里面,类型选择文本,确实可以看到之前的测试文本回复。
在线调试器:http://debug.fangbei.org/
0 0
- Flask在新浪SAE部署服务 写微信公众平台回复的功能
- 在新浪云sae上搭建微信公众平台消息有时不回复的问题
- thinkphp在新浪SAE平台的部署
- thinkphp在新浪SAE平台的部署
- 基于Django的微信公众号开发(1) -- 在新浪sae部署Django1.9.7
- Flask + SAE 接入微信公众平台
- 开发微信公众平台--新建新浪云sae部署服务器
- 微信公众号+Flask+新浪SAE 配置
- 【玩转微信公众平台之六】 搭建新浪SAE服务器
- Java Web的新浪云SAE部署
- 公众号从菜鸟到高手的进化:微信公众平台自动回复功能
- 新浪sae配置微信公众号实现自动回复(一)
- 新浪sae配置微信公众号实现自动回复(二)
- 新浪SAE平台服务器和数据库部署详解
- 新浪sae平台mysql
- 新浪云SAE 部署 flask程序详解 打包方式上传代码部署
- JPush+SAE+J2EE实现微信公众平台账号服务
- Flask+MySQL部署到SAE
- 同步和异步的区别
- springboot+mybatis搭建可以运行的项目
- 欢迎使用CSDN-markdown编辑器
- 装饰者模式
- MySQL主从复制的原理及配置方法(比较详细)
- Flask在新浪SAE部署服务 写微信公众平台回复的功能
- 缓和曲线06七次四项式
- BUG in Windows 10 insider preview about onedrive
- 4.玩转Spring Boot Starter POMs 介绍
- 建立TCP连接一定需要三次握手的原因
- 返回参数二进制中 1 的个数
- 2017年深度学习十大趋势预测
- ListView优化后的适配器的封装
- 以PHP文件使用另一php文件的数据