国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python微信企業號開發之回調模式接收微信端客戶端發送消息及被

2020-02-16 02:07:46
字體:
來源:轉載
供稿:網友

本文實例講述了Python微信企業號開發之回調模式接收微信端客戶端發送消息及被動返回消息。分享給大家供大家參考,具體如下:

說明:此代碼用于接收手機微信端發送的消息

#-*- coding:utf-8 -*-from flask import Flask,requestfrom WXBizMsgCrypt import WXBizMsgCryptimport xml.etree.cElementTree as ETimport sysapp = Flask(__name__)@app.route('/index',methods=['GET','POST'])def index():    sToken = 'Uxxxx'    sEncodingAESKey = 'U2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'    sCorpID = 'wx1xxxxxxxxxxxxx'    wxcpt=WXBizMsgCrypt(sToken,sEncodingAESKey,sCorpID)    #獲取url驗證時微信發送的相關參數    sVerifyMsgSig=request.args.get('msg_signature')    sVerifyTimeStamp=request.args.get('timestamp')    sVerifyNonce=request.args.get('nonce')    sVerifyEchoStr=request.args.get('echostr')    #    sReqMsgSig = sVerifyMsgSig    sReqTimeStamp = sVerifyTimeStamp    sReqNonce = sVerifyNonce    #    sResqMsgSig = sVerifyMsgSig    sResqTimeStamp = sVerifyTimeStamp    sResqNonce = sVerifyNonce    #驗證url    if request.method == 'GET':        ret,sEchoStr=wxcpt.VerifyURL(sVerifyMsgSig, sVerifyTimeStamp,sVerifyNonce,sVerifyEchoStr)        print type(ret)        print type(sEchoStr)        if (ret != 0 ):            print "ERR: VerifyURL ret:" + ret            sys.exit(1)        return sEchoStr    #接收客戶端消息    if request.method == 'POST':        #sReqMsgSig = request.form.get('msg_signature')        #sReqTimeStamp = request.form.get('timestamp')        #sReqNonce = request.form.get('nonce')        #賦值url驗證請求相同的參數,使用上面注釋掉的request.form.get方式獲取時,測試有問題            sReqMsgSig = sVerifyMsgSig            sReqTimeStamp = sVerifyTimeStamp            sReqNonce = sVerifyNonce        sReqData = request.data        print sReqData        ret,sMsg=wxcpt.DecryptMsg( sReqData, sReqMsgSig, sReqTimeStamp, sReqNonce)        if (ret != 0):            print "ERR: VerifyURL ret:"            sys.exit(1)        #解析發送的內容并打印        xml_tree = ET.fromstring(sMsg)        content = xml_tree.find("Content").text        print content    #被動響應消息,將微信端發送的消息返回給微信端    sRespData = '''<xml>            <ToUserName><![CDATA[mycreate]]></ToUserName>            <FromUserName><![CDATA[wx177d1233ab4b730b]]></FromUserName>            <CreateTime>1348831860</CreateTime>            <MsgType><![CDATA[text]]></MsgType>            <Content><![CDATA[''' +content +''']]></Content>            <MsgId>1234567890123456</MsgId>            <AgentID>1</AgentID>            </xml>'''    ret,sEncryptMsg=wxcpt.EncryptMsg(sRespData, sReqNonce, sReqTimeStamp)    if( ret!=0 ):        print "ERR: EncryptMsg ret: " + ret        sys.exit(1)    return sEncryptMsgif __name__ == '__main__':    app.run(host='0.0.0.0',port=6000,debug=True)            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 德令哈市| 鄂州市| 新和县| 阳谷县| 金沙县| 大新县| 承德市| 鸡西市| 鸡东县| 措美县| 昌宁县| 河北区| 澄江县| 焦作市| 舒城县| 鲜城| 开封县| 盐源县| 寻乌县| 察隅县| 和林格尔县| 保亭| 乾安县| 长葛市| 三河市| 玛纳斯县| 太仆寺旗| 张家界市| 承德市| 昭觉县| 广灵县| 深圳市| 循化| 邯郸县| 武清区| 钦州市| 玉林市| 新余市| 嵊州市| 苍南县| 成都市|