微信公众号接口开发入门指引中开发者服务器验证hash加密在python2.7与3.6中的不同写法

官网手册中代码是2.7写的
https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Getting_Started_Guide.html

如果改写成python 3.6,除了语法的区别,还需要改写hash加密的过程:

import hashlib
import web
import reply
import receive


class Handle(object):
    def GET(self):
        try:
            data = web.input()
            print(data)
            if len(data) == 0:
                return "hello, this is handle view"
            signature = data.signature
            timestamp = data.timestamp
            nonce = data.nonce
            echostr = data.echostr
            token = "1111111111111"

            list = [token, timestamp, nonce]
            print(list)
            list.sort()
            sha1 = hashlib.sha1()
            # map(sha1.update, list) python 2.7写法
            sha1.update("".join(list).encode('utf-8'))  # python 3.6 写法
            hashcode = sha1.hexdigest()
            print("handle/GET func: hashcode, signature: ", hashcode, signature)
nature)
            print(echostr)
            if hashcode == signature:
                print('hashcode==signature')
                return echostr
            else:
                print('else')
                return ""
        except(Exception, Argument):
            print('except')
            return Argument

参考文档:
https://blog.csdn.net/qq_42798238/article/details/90473360

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值