訂閱號服務開發01-搭建開發環境

鯊魚逛大街發表於2019-05-09

@

訂閱號服務開發環境

開通訂閱號

  1. 首先,有興趣的朋友可以先到微信公眾平臺註冊一個訂閱號即可
    在這裡插入圖片描述

本專案直接使用測試工作號進行開發,微信公眾平臺介面測試帳號申請地址如:
https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
在這裡插入圖片描述

  1. 微信掃一掃授權後,可開啟測試號管理頁面如下
    在這裡插入圖片描述

    紅色圈住的地方是重點,後面再介紹怎麼用

在這裡插入圖片描述
到了這裡,我們先了解下微信服務的資料流,這樣我們就可以瞭解上圖紅圈中的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,可以滿足我們通過公網訪問本地服務。

  1. 首先我們訪問地址 https://dashboard.ngrok.com/get-started, 如下提示進行操作
    在這裡插入圖片描述
    操作成功後,我這邊使用的是8000埠,而不是80埠。
    在這裡插入圖片描述
    到這裡,我們上面建立的django服務,不僅僅只能通過本地localhost訪問了,已經將我們的本地8000埠對映到了公網,如
    在這裡插入圖片描述
    已經表明對映成功,只是我們還需要在setting.py 的ALLOWED_HOSTS設定中,將域名新增即可。
    setting.py ALLOWED_HOSTS = ['df5a54a7.ngrok.io']

配置微信URL與Token

在這裡插入圖片描述
配置後,提交,即可進行接入驗證,注意,這裡可能需要多提交幾次。
在這裡插入圖片描述
提示“配置成功”即證明已經接入成功!同時觀察到,本地控制檯中會輸出“微信簽名驗證通過!”
在這裡插入圖片描述


到這裡,已經完成了開發者服務接入到微信公眾號中了,下一步,就是開始開發我們的服務啦~~


:-: 訂閱號服務開發01-搭建開發環境
微信掃一掃,關注“python測試開發圈”,獲取更多測試開發分享!

相關文章