zoukankan      html  css  js  c++  java
  • python Django框架接入微信公众平台

    1、在接入微信公众平台之前,需要在微信公众平台配置好基本信息,如下:

    这个时候点击“提交”按钮,会提示“Token校验失败”,不要着急,这是必然会出现的现象,先不要退出页面,保留各项输入的数据,按第二步操作 

    2、编写代码校验微信后台提供的数据
    views.py
    from django.http.response import HttpResponse
    import hashlib
    from django.views.decorators.csrf import csrf_exempt
    
    
    @csrf_exempt
    def check_signature(request):
        if request.method == 'GET':
            signature = request.GET.get('signature')
            timestamp = request.GET.get('timestamp')
            nonce = request.GET.get('nonce')
            echostr = request.GET.get('echostr')
            token = 'leartd'
    
            hashlist = [token, timestamp, nonce]
            hashlist.sort()
            print('[token, timestamp, nonce]', hashlist)
            hashstr = ''.join([s for s in hashlist]).encode('utf-8')  #这里必须增加encode('utf-8'),否则会报错
            print('hashstr befor sha1', hashstr)
            hashstr = hashlib.sha1(hashstr).hexdigest()
            print('hashstr sha1', hashstr)
            if hashstr ==signature:
                return HttpResponse(echostr)  #必须返回echostr
            else:
                return HttpResponse('error')  #可根据实际需要返回
        else:
            return HttpResponse('chenggong')  #可根据实际需要返回

    url规则配置不在这里赘述

    3、将项目代码提交到服务器后,启动服务。并执行步骤1中的“提交”按钮。此时提示提交成功。

    接下来可以进行其他的业务代码开发



  • 相关阅读:
    绿色版的Linux.NET——“Jws.Mono”
    警惕!高版本VS发布时预编译导致Mono中Razor找不到视图
    用迭代实现无限级分类
    如何让我们的PHP在Jexus中跑起来
    Linux.NET实战手记—自己动手改泥鳅(下)
    umei-spider
    selenium-爬取小说
    filter() 函数
    字典,元组,列表,字符串互相转换
    Python实用黑科技——解包元素(2)
  • 原文地址:https://www.cnblogs.com/ianduin/p/8284604.html
Copyright © 2011-2022 走看看