django微信开发入门

2015-09-08  本文已影响1872人  秦汉邮侠

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)
上一篇 下一篇

猜你喜欢

热点阅读