目录
订阅号服务开发环境 开通订阅号创建开发者服务将本地服务映射到公网配置微信URL与Token@
本项目直接使用测试工作号进行开发,微信公众平台接口测试帐号申请地址如:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
微信扫一扫授权后,可打开测试号管理页面如下
红色圈住的地方是重点,后面再介绍怎么用
到了这里,我们先了解下微信服务的数据流,这样我们就可以了解上图红圈中的URL代表的含义了,URL和Token先不用急着填,看到后面就明白了。
创建一个django项目,提供服务,假设你是有django基础
一、安装依赖包:pip install wechatpy wechat-sdk文档见:https://wechatpy.readthedocs.io/zh_CN/master/index.html 二、django项目代码: views.py:
from django.http import HttpResponse from wechatpy.exceptions import InvalidSignatureException from wechatpy.utils import check_signature def wechat(request): # GET 方式用于微信公众平台绑定验证 if request.method == 'GET': signature = request.GET.get('signature', "") timestamp = request.GET.get('timestamp', "") nonce = request.GET.get('nonce', "") echo_str = request.GET.get('echostr', "") token = 'MiltonGuan' try: check_signature(token, signature, timestamp, nonce) print("微信签名验证通过") except InvalidSignatureException: echo_str = '微信签名验证失败' return HttpResponse(echo_str)url.py: ``` from django.contrib import admin from django.urls import path
from wxapp import views
urlpatterns = [ path('admin/', admin.site.urls), path('wx/', views.wechat),] ``` 启动服务后,访问浏览器http://127.0.0.1:8000/wx/
[info] 到这里,我们已经创建好开发者服务,但是,微信服务是不能够推送消息到我们开发本地的,它只能推送到一个公网能访问的服务,因此,我们需要将我们的服务部署到公网上。
显然,将本地服务部署到公网上,对很多朋友来说都不是很现实,就算能够部署,也不方便调试本地代码,这里介绍一个工具ngrok,可以满足我们通过公网访问本地服务。
首先我们访问地址 https://dashboard.ngrok.com/get-started, 如下提示进行操作 操作成功后,我这边使用的是8000端口,而不是80端口。 到这里,我们上面创建的django服务,不仅仅只能通过本地localhost访问了,已经将我们的本地8000端口映射到了公网,如 已经表明映射成功,只是我们还需要在setting.py 的ALLOWED_HOSTS设置中,将域名添加即可。 setting.py ALLOWED_HOSTS = ['df5a54a7.ngrok.io']配置后,提交,即可进行接入验证,注意,这里可能需要多提交几次。 提示“配置成功”即证明已经接入成功!同时观察到,本地控制台中会输出“微信签名验证通过!”
到这里,已经完成了开发者服务接入到微信公众号中了,下一步,就是开始开发我们的服务啦~~
:-: 微信扫一扫,关注“python测试开发圈”,获取更多测试开发分享!
转载于:https://www.cnblogs.com/guanfuchang/p/10840958.html