美文网首页
微信公众号连接服务器(1)

微信公众号连接服务器(1)

作者: Q10Viking | 来源:发表于2018-12-01 02:14 被阅读24次

参照微信公众号技术文档一步步搭建自己的服务器。

1.1开启公众号开发者模式

申请服务器

通过Github与AWS合作,为学生免费提供一年的云服务器使用。aws-educate登录地址

1.2搭建服务

  1. 通过AWS的文档操作,在windows上连接到云服务器。(我使用git bash来代替官网建议putty工具)在存储私钥的地方打开bash.输入aws实例提供的命令。
ssh -i "MyPair.pem" ubuntu@ec2-54-85-162-244.compute-1.amazonaws.com
图片.png
  1. 在服务器中安装web.py,libxml2,libxsit,lxml( 建议使用python2.7,python3找不到libxml2)

  2. 在服务器中创建wechat文件夹并编写代码vim main.py

# -*- coding: utf-8 -*-
# filename: main.py
import web

urls=(
        '/wx','Handle',
)

class Handle(object):
    def GET(self):
        return "Hello Q10Viking,this is handle view"

if __name__ == '__main__':
    app = web.application(urls,globals())
    app.run()

  1. 执行命令 sudo python main.py 80

5.在浏览器中输入http://外网ip/wx,如(http://54.85.162.244/wx

浏览器.png

1.3 申请公众号

  1. 步骤比较简单,按照文档和指示即可微信公众平台

2.填写配置
url填写:http://54.85.162.244/wx 。外网IP请到自己的云服务器查询。 http的端口号固定使用80,不可填写其他。
Token:自主设置,如q10viking

image
  1. 现在选择提交肯定是验证token失败,因为还需要完成代码逻辑。改动原先main.py文件,新增handle.py
    a) vim main.py
# -*- coding: utf-8 -*-
# filename: main.py
import web
from handle import Handle

urls = (
    '/wx', 'Handle',
)

if __name__ == '__main__':
    app = web.application(urls, globals())
    app.run()

b) vim handle.py
先附加逻辑流程图


image
# -*- coding: utf-8 -*-
# filename: handle.py

import hashlib
import web

class Handle(object):
    def GET(self):
        try:
            data = web.input()
            if len(data) == 0:
                return "hello, this is handle view"
            signature = data.signature
            timestamp = data.timestamp
            nonce = data.nonce
            echostr = data.echostr
            token = "q10viking" #请按照公众平台官网\基本配置中信息填写

            list = [token, timestamp, nonce]
            list.sort()
            sha1 = hashlib.sha1()
            map(sha1.update, list)
            hashcode = sha1.hexdigest()
            print "handle/GET func: hashcode, signature: ", hashcode, signature
            if hashcode == signature:
                return echostr
            else:
                return ""
        except Exception, Argument:
            return Argument

4) 重新启动成功后(python main.py 80),点击提交按钮。若提示”token验证失败”, 请认真检查代码或网络链接等。若token验证成功,会自动返回基本配置的主页面,点击启动按钮


个人微信公众号

欢迎进来交流

Q10Viking.png

相关文章

  • 微信公众号连接服务器(1)

    参照微信公众号技术文档一步步搭建自己的服务器。 1.1开启公众号开发者模式 申请服务器 通过Github与AWS合...

  • 基于JFinal框架的微信公众号搭建

    搭建微信公众号所需资源 1.微信公众号2.服务器/百度应用引擎3.公网域名/ngrok免费内网转发工具 一,申请微...

  • 微信公众号本地调试

    微信公众号本地调试 Q: 每次微信公众号开发都要上传到测试服务器上才能测试,特别麻烦和不便。 步骤: 1.修改h...

  • 微信公众号接入ChatGPT

    微信公众号接入ChatGPT功能记录 通过Python + WeRoBot实现思路:给微信公众号配置云服务器,在服...

  • 2.微信公众号服务器配置启用后的消息接收

    微信服务器配置完成之后,我们需要定义接口来接收公众号所发生的事件和消息 1.微信公众号中的消息传递是以服务器地址的...

  • 微信公众号开发 (4) 网页授权

    一、前言 微信公众号开发 (1) 微信接入认证成为开发者 微信公众号开发 (2) 消息处理 微信公众号开发 (3)...

  • 微信公众号——后台连接

    微信公众号只有在配置后台的时候才能在自己的后台接收微信公众号的消息,因此要想在微信公众号中使用自定义后台,首先必须...

  • 2.markdown语法(学会这些常用的就够了)

    1.字号大小示例(关键:#的多少) 微信公众号格式化工具 微信公众号格式化工具 微信公众号格式化工具 微信公众号格...

  • 微信公众号的运营技巧

    微信公众号的运营技巧 1)重视定位:考虑微信公众号要承担的职责,给微信公众号一个合适的身份。定位微信公众号的形象 ...

  • 1.微信公众号服务器配置启用

    微信公众号开发首先要配置服务器,否则你只能使用一些简单功能,比如自动回复。 1.登录微信公众号并且进入开发的基本配...

网友评论

      本文标题:微信公众号连接服务器(1)

      本文链接:https://www.haomeiwen.com/subject/ehqlcqtx.html