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中的“提交”按钮。此时提示提交成功。

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



  • 相关阅读:
    树-1
    javaSE 2
    (蓝桥杯)蛇形矩阵的求法
    年轻母牛的故事
    互质环(序列)与最小公倍数的几种求法
    算法的复杂度
    Halo开源博客项目配置
    IDEA报错稀有语法问题
    带你跑ELADMIN后台管理系统开源项目
    相比c++,Java在基础语法的改变
  • 原文地址:https://www.cnblogs.com/ianduin/p/8284604.html
Copyright © 2011-2022 走看看