您的位置:首页 > 移动开发 > 微信开发

微信前端访问模拟器(flask)

2013-12-13 10:44 253 查看
#post_data.py
__author__ = 'qianxun'
# -*- coding: utf8 -*-
import requests
# 将数据放到字典中,在后台直接通过key,取出value
# postdic = {
#     "ToUserName":"qianxun",
#     "FromUserName":"xiaowang",
#     "MsgType":"text",
#     "content":content
# }

backdata = {'Content': 'subscribe', 'MsgType': 'text', 'FromUserName': 'xiao', 'ToUserName': 'wang', 'CreateTime': '1384596347'}
# content = "subscribe"
# postdic_ = u"""
# <xml>
# <ToUserName>wang</ToUserName>
# <FromUserName>xiao</FromUserName>
# <MsgType>text</MsgType>
# <Content>{0}</Content>
# </xml>
# """.format(content)

toUser = "qianxun"
fromUser = "feng"
MsgType = "subscribe"
Content = "helloworld"
postdic = u'''
<xml>
<ToUserName><![CDATA[%(toUser)s]]></ToUserName>
<FromUserName><![CDATA[%(fromUser)s]]></FromUserName>
<CreateTime>1348831860</CreateTime>
<MsgType><![CDATA[%(MsgType)s]]></MsgType>
<Content><![CDATA[%(Content)s]]></Content>
<MsgId>1234567890123456</MsgId>
</xml>'''%{"toUser":toUser,"fromUser":fromUser, "MsgType":MsgType,"Content":Content}

r = requests.post("http://127.0.0.1:5000",postdic)
# r = requests.get("http://127.0.0.1:5000",params=postdic)
print r.text
*************************************************************************************
*************************************************************************************
#get_postdata.py

__author__ = 'Administrator'
# -*- coding: utf8 -*-
from flask import Flask,request
import xml.etree.ElementTree as ET
import time
app = Flask(__name__)
app.debug = True

@app.route('/',methods=['POST','GET'])
def wechat_msg():
msg =xml_convert_dic()
print msg
if msg["MsgType"] == "subscribe":

return guidence_info(msg)

def xml_convert_dic():
root = ET.fromstring(request.data)
msg = {}
for child in root:
msg[child.tag] = child.text
return msg
GUIDENCE_INFO = u"""
云泽谷生态农场向您提供生态食材,促销和优惠活动。
会员点菜回复01
应季采摘回复02
公司团购回复03
购买会员卡回复04
"""
TEXT_MSG_INFO = u"""
<xml>
<ToUserName><![CDATA[%(FromUserName)s]]></ToUserName>
<FromUserName><![CDATA[%(ToUserName)s]]></FromUserName>
<CreateTime>%(CreateTime)s</CreateTime>
<MsgType><![CDATA[%(MsgType)s]]></MsgType>
<Content><![CDATA[%(Content)s]]></Content>
</xml>"""
def guidence_info(msg):
msg["CreateTime"] = str(int(time.time()))
msg["Content"] = GUIDENCE_INFO
print msg
rmsg = TEXT_MSG_INFO%(msg)
return rmsg

if __name__ == "__main__":

app.run()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: