在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Python/ flask微信公眾號服務(wù)器創(chuàng)建失敗

flask微信公眾號服務(wù)器創(chuàng)建失敗

這個是我的代碼

# -*- coding:utf-8 -*-

from flask import Flask,request
from time import time
import xml.etree.ElementTree as et
import hashlib

app = Flask(__name__)
app.debug = True


text_str = '''<xml>
                <ToUserName>![CDATA[%s]]</ToUserName>
                <FromUserName>![CDATA[%s]]</FromUserName>
                <CreateTime>%s</CreateTime>
                <MsgType>![CDATA[text]]</MsgType>
                <Content>![CDATA[%s]]</Content>
                </xml>'''


def reply_muban(type):
    if type == 'text':
        return text_str

@app.route('/',methods=['GET','POST'])
def wechat():

    if request.method == 'GET':
        token = '********'
        data = request.args
        signature = data.get('signature','')
        timestamp = data.get('timestamp','')
        nonce = data.get('nonce','')
        echostr = data.get('echostr','')

        list = [token, timestamp, nonce]
        list.sort()

        s = list[0] + list[1] + list[2]

        hascode = hashlib.sha1(s.encode('utf-8')).hexdigest()

        if hascode == signature:
            return echostr
        else:
            return ""
    if request.method == 'POST':
        xmldata = request.args
        xml_rec = et.fromstring(xmldata)

        ToUserName = xml_rec.find('ToUserName').text
        fromUser = xml_rec.find('FromUserName').text
        MsgType = xml_rec.find('MsgType').text
        Content = xml_rec.find('Content').text
        MsgId = xml_rec.find('MsgId').text

        return reply_muban(MsgType) % (fromUser, ToUserName, int(time()), Content)

if __name__ == '__main__':
    app.run()

token也驗證成功了。。
我覺得應(yīng)該能夠返回給用戶同樣的消息了呀。。。
為什么沒有成功呢,微信提示提供的服務(wù)出現(xiàn)故障。。。
求幫忙解決....
T T

回答
編輯回答
她愚我

我也遇到這個問題,樓上答案試過了,也不行啊,請問樓主解決這個問題了嗎?

2017年5月18日 23:07
編輯回答
懶洋洋

說實話,我也做了這樣的一個測試,也是顯示“服務(wù)器出現(xiàn)故障”!

我發(fā)現(xiàn)一個奇怪的現(xiàn)象,只要我把服務(wù)器放在防火墻內(nèi),就出現(xiàn)這個問題。不知道為什么?

2017年2月5日 00:01
編輯回答
莓森
from flask import make_response
response=make_response(reply_muban(MsgType) % (fromUser, ToUserName, int(time()), Content))
response.content_type = 'application/xml'
return response
2017年7月14日 04:21