django学习之路(四)开发微信公众号
来源:互联网 发布:python 量化交易策略 编辑:程序博客网 时间:2024/06/05 19:35
开发微信公众号
我们可以将之前创建的myblog来完成这件事情。我们之前创建了项目myblog,并在myblog中新建了应用blog。现在我们只需要两步就可完成微信公众号token的验证。
第一步:编写函数体(myblog/blog/views)
# -*- coding: utf-8 -*-from django.http import HttpResponsefrom django.views.decorators.csrf import csrf_exemptfrom django.views.generic.base import Viewimport hashlibclass token(View): @csrf_exempt def dispatch(self, *args, **kwargs): return super(token, self).dispatch(*args, **kwargs) def get(self, request): # 下面这四个参数是在接入时,微信的服务器发送过来的参数 signature = request.GET.get('signature', None) timestamp = request.GET.get('timestamp', None) nonce = request.GET.get('nonce', None) echostr = request.GET.get('echostr', None) # 这个token是我们自己来定义的,并且这个要填写在开发文档中的Token的位置 token = 'weixin' # 把token,timestamp, nonce放在一个序列中,并且按字符排序 hashlist = [token, timestamp, nonce] hashlist.sort() # 将上面的序列合成一个字符串 hashstr = ''.join([s for s in hashlist]) # 通过python标准库中的sha1加密算法,处理上面的字符串,形成新的字符串。 hashstr = hashlib.sha1(hashstr).hexdigest() # 把我们生成的字符串和微信服务器发送过来的字符串比较, # 如果相同,就把服务器发过来的echostr字符串返回去 if hashstr == signature: return HttpResponse(echostr)
第二步:配置urls
这一步需要改动两个urls.py
一个是myblog目录下面的:
from django.conf.urls import url,includefrom django.contrib import adminurlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^wx/',include('blog.urls'))]
在blog目录下面的views:
from django.conf.urls import urlfrom . import viewsurlpatterns = [ url(r'^token/$',views.token)]
填写的url为http://127.0.0.1/wx/token
完成。
阅读全文
0 0
- django学习之路(四)开发微信公众号
- PHP及其微信公众号开发(学习之路四)
- PHP开发微信公众号(学习之路一)
- Django+OpenShift微信公众号开发(一)
- Django+Openshift微信公众号开发(二)
- PHP及其微信公众号开发(学习之路三)
- 微信公众号开发中的坑(四)
- 微信公众号开发(四)自定义菜单
- 微信公众号开发(四)推送消息模板
- SpringBoot开发微信公众号(四)
- 微信公众号开发(四)代码调试
- Android开发学习之微信公众号界面
- Android开发学习之微信公众号界面
- Python3: Django开发微信公众号平台功能测试之普通消息回复
- Django 微信公众号对接开发demo
- 使用Django进行微信公众号开发
- 基于Django的微信公众号开发(3) -- 通过微信公众号开发者认证
- Django开发微信公众平台
- 去电流程分析---之一
- mySQL安装后服务无法启动
- 聊天室的实现(消息实时刷新)
- (Ubuntu系列)——Linux下软件的安装与卸载(命令行模式)
- jquery实现图片拖动
- django学习之路(四)开发微信公众号
- 数据缓存+listview分页加载+日夜间模式切换
- 网络请求 + imageloader
- 获取天气预报
- 英语分享总结
- 机器学习&深度学习&大数据&数据库 学习资料
- 欢迎使用CSDN-markdown编辑器
- FP-growth算法,高效发现频繁项集,找出最短时序路径
- NOIP2014-普及组复赛-第1题-珠心算测验