C3 微信公众号开发 处理订阅事件 python+flask+sae

将C2中新增的语句替换为:


    else :
        xml_recv = ET.fromstring(request.data)
        msgType = xml_recv.find("MsgType").text
        if msgType == "event" :
            return replyEvent(xml_recv)
        if msgType == "text" :
            return replyWhatItGet( xml_recv ) 
    
#回复订阅事件
def replyEvent(xml_recv): 
    return replyFormat(xml_recv, "大声说我第几帅!")       

#获取用户发送的原始数据并原样返回
def replyWhatItGet(xml_recv):      
    return replyFormat(xml_recv, xml_recv.find("Content").text)

#消息回复模板
def replyFormat(xml_recv, Content):
    ToUserName = xml_recv.find("ToUserName").text       #获取之前发送的 目标用户(公众号)
    FromUserName = xml_recv.find("FromUserName").text   #获取之前的     消息来源用户 
    
    #构造xml格式,回复内容
    reply = """
               
              
              %s
              
              
              """

    response = make_response(reply % (FromUserName, ToUserName, str(int(time.time())), Content))
    response.content_type = 'application/xml'
    return response                                     #返回这个xml消息

mainapp.py概览

C3 微信公众号开发 处理订阅事件 python+flask+sae_第1张图片
处理订阅事件.png

效果如下

C3 微信公众号开发 处理订阅事件 python+flask+sae_第2张图片
效果.jpg

你可能感兴趣的:(C3 微信公众号开发 处理订阅事件 python+flask+sae)