微信个人公众号开发-打通后台服务器任督二脉

自媒体运营教程 产品运营 90

微信个人公众号开发-打通后台服务器任督二脉-第1张图片-90博客网


上篇文章 <微信个人公众号开发-先搭个免费的服务器吧(AWS EC2)> 和大家分享了如何搭建免费的微信个人公众号开发所需要的后台服务器.

这篇就来继续说说如何让你的公众号与后台服务器交互.

一. 微信公众号接口准备


这里我们要用前面搭建的aws服务器上部署的flask web应用来为微信公众号提供接口.

  1. 修改flaskserver.py

    nano /var/www/flaskserver/flaskserver.py

# coding=utf-8

from flask import Flask

APPlication = Flask(__name__)

wechat_token='mymytoken'

def check_signature(signature, timestamp, nonce):

token = wechat_token

tmp_arr = [token, timestamp, nonce]

tmp_arr.sort()

tmp_str = tmp_arr[0] + tmp_arr[1] + tmp_arr[2]

sha1_tmp_str = hashlib.sha1(tmp_str).hexdigest()

if (sha1_tmp_str == signature) :

return True

else :

return False

@application.route('/wechat/', methods=['GET', 'POST'])

def respond():

signature = request.args.get('signature', '')

timestamp = request.args.get('timestamp', '')

nonce = request.args.get('nonce', '')

echostr = request.args.get('echostr', '')

if request.method == 'GET':

if check_signature(signature, timestamp, nonce) :

return echostr

else :

return 'Not Valid!'

else :

xml_recv = ET.fromstring(request.data)

#text,image,voice,location ...

MsgType = xml_recv.find("MsgType").text

ToUserName = xml_recv.find("ToUserName").text

FromUserName = xml_recv.find("FromUserName").text

replyContent = ""

if(MsgType=="text"):

replyContent = xml_recv.find("Content").text + " hello"

reply = "

<xml><ToUserName><![CDATA[%s]]></ToUserName><FromUserName><![CDATA[%s]]></FromUserName><CreateTime>%s</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[%s]]></Content><FuncFlag>0</FuncFlag></xml>"

re_msg = (reply % (FromUserName, ToUserName, str(int(time.time())), replyContent))

return re_msg

他哥的, 这破编辑器把格式都给整没了, 谁能告诉我怎么在头条高亮代码????????? 我还是把代码截个图, 大家看下代码层次.

微信个人公众号开发-打通后台服务器任督二脉-第2张图片-90博客网


以上代码包含了微信API调用认证过程和一个简单的用户文本消息处理过程. 如果用户发送任意字符, 该接口将会将此字符 后面加上" hello"后返回.

另请记录代码中的wechat_token, 后面微信公众号后台配置需要用到.

关于来往的信息格式, 大家可以查看微信官方的开发文档(mp,weixin,qq,com/wiki), 灰常详细, 这里就不细究下去.

二. 微信公众号申请


关于公众号申请, 按照引导步骤相信大家都能顺利申请成功.

需要注意的是: 所谓微信公众号,其实有很多细分,有订阅号,服务号,企业号. 具体区别见下图.

对于开发来说, 最大的区别就是功能权限的区别. 那么当然, 按一般套路来的话, 就是花钱的才玩的好.

可以看到, 如果个人玩,就当选订阅号, 但不要看这个图里好像普通订阅号和微信认证订阅号是一样的功能,其实 不!一!样!

微信个人公众号开发-打通后台服务器任督二脉-第3张图片-90博客网


个人订阅号现在无法进行微信认证, 也就是说会少很多功能. 但是但是但是, 这个个人订阅号需要的申请材料最少, 最容易上手,是作为研究练手的最佳选择, 所以本文就是以个人订阅号为例, 给大家看下后台开发原理是怎么实现的.

微信个人公众号开发-打通后台服务器任督二脉-第4张图片-90博客网

三. 添加服务器配置


申请个人订阅号成功后, 可以登录到公众平台后台系统.下面我们直奔主题, 添加服务器配置.

  1. 在左侧导航栏最下部分选择</>开发 -> 基本配置:

  2. 右侧基本配置, 打钩同意,成为开发者.之后会分配给你一个开发者ID.

  3. 在服务器配置栏, 点击 修改配置

微信个人公众号开发-打通后台服务器任督二脉-第5张图片-90博客网


4. 打钩, 同意成为开发者.

微信个人公众号开发-打通后台服务器任督二脉-第6张图片-90博客网


5.点击 修改配置按钮.

微信个人公众号开发-打通后台服务器任督二脉-第7张图片-90博客网

相关影片资源迅雷下载推荐

各个品牌挤破头要做公众号开发,原因竟然是这些?

微信公众号现已经成为品牌文化推广的主流,为什么大家都愿意去开发公众号?公众号的优势是什么?传播高效、互动性高 微信建立起来的社交网络,微信公众号是完全受用的。微信用户群体大,主要传播途径都是熟人传播, ...

公众号开发,各个品牌挤破头要做公众号开发,原因竟然是这些?


6. 按照截图填写好相关信息后,点击提交.

注: URL要填你服务器的地址, 后面的/wechat/也属于自定义,可加可不加, 看服务api具体实现.

提交时公众号平台回去和我们的API交互验证, 只有验证通过了才算提交成功. 提交成功之后, 就迫不及待的点击 启用按钮吧:)

微信个人公众号开发-打通后台服务器任督二脉-第8张图片-90博客网


启用时, 会弹框提醒你, 消息会转发到设置的服务器上, 然后自定义菜单就不能用了blablabla, 先不管, 确定走起.

呐, 到这里呢, 基本上就打通啦, 快关注你的公众号调戏一下吧

微信个人公众号开发-打通后台服务器任督二脉-第9张图片-90博客网

五. 菜单


微信公众号,咋能没有个菜单呢. 但个人订阅号提供的菜单傻瓜得很, 没有高级功能,只能链接文章. 不过有总比没有好.

但是但是但是, 鸡脚和鸡肋不能兼得?

微信个人公众号开发-打通后台服务器任督二脉-第10张图片-90博客网


这不坑爹呢么, 你这菜单又不能和后台互动, 这么矫情作甚?

共存方法还是有的, 只不过有点绕, 具体是这么个绕法:

  1. 先去开发者中心把服务器配置停掉.

  2. 然后回到自定义菜单里编辑你的菜单.

    微信个人公众号开发-打通后台服务器任督二脉-第11张图片-90博客网


  3. 再回去把服务器配置开起来.

  4. 点击添加功能插件, 选择 自定义菜单.

    微信个人公众号开发-打通后台服务器任督二脉-第12张图片-90博客网


  5. 点击开启

    微信个人公众号开发-打通后台服务器任督二脉-第13张图片-90博客网


大功告成, 菜单和服务器配置从此幸福滴生活在一起了.

五. 其他配置-微信服务器列表


上篇搭建服务器文章中提到我们挂在外面的服务器可能会被恶意爬虫骚扰, 需要将微信的服务器列表加入到aws 的入站白名单为妙.具体服务器列表获取方法,请参照官方实例获取.

微信个人公众号开发-打通后台服务器任督二脉-第14张图片-90博客网

六. 结语


好啦, 此文到此结束, 欢迎拍砖交流.

相关影片资源迅雷下载推荐

软件开发的坑,老板们别再踩了

软件开发的坑,老板们别再踩了导读:为避免损失和项目难产,选择技术开发公司之前,记得联系小编免费咨询下哦!1、 系统功能缺陷,项目胎死腹中:       某些软件公司利用创业者急于求成和不懂技术,空手套 ...

软件开发,软件开发的坑,老板们别再踩了

企业网站建设与开发最低只要299元起,包含域名服务器,需要的联系QQ345424724,电话15516990022,18530226930

标签: 公众号开发 微信个人公众号开发-打通后台服务器任督二脉

抱歉,评论功能暂时关闭!