django微信開發入門

weixin_34087301發表於2015-09-08

1.申請微信公眾號

公眾號分為三類:訂閱號,服務號,企業號,後面兩種需要一定的資質,訂閱號很好申請

2.設定網站的url和token

你好

3.新建django工程

主要設定檢視函式
django 做微信開發, 特別要注意的是 CSRF微信內訊息的流程是:使用者 -> 微信官方伺服器 -> 開發者的伺服器我們的開發流程裡, 微信端是一個 client, django 是 web 伺服器.client 過來的資料, 走的都是一個 url ( 微信公眾號管理臺內自定義)除了首次校驗, 後面的都是 POST,所有 POST 訊息都不可能有 django 特有的 CSRF 標誌.所以, views 函式需要 @csrf_exempt 修飾下
檢視函式如下:

#-*- coding:utf-8 -*-
from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
from wechat_sdk import WechatBasic

token = 'xxxxxxx'

@csrf_exempt
def home(request):
    wechat = WechatBasic(token=token)
    if wechat.check_signature(signature=request.GET['signature'],
                              timestamp=request.GET['timestamp'],
                              nonce=request.GET['nonce']):
        if request.method == 'GET':
            rsp = request.GET.get('echostr', 'error')
        else:
            wechat.parse_data(request.body)
            message = wechat.get_message()
            rsp = wechat.response_text(u'訊息型別: {}'.format(message.type))
    else:
        rsp = wechat.response_text('check error')
    return HttpResponse(rsp)

相關文章