最近在学习微信公众号的时候遇到了一个问题:Token验证失效
话不多说,看代码:handle.py
import hashlib
import web
class Handle(object):
def GET(self):
try:
data = web.input()
if len(data) == 0:
return "hello, this is handle view"
# 微信服务器获取到的数据
# 生成方式是将nonce、timestamp和token(也就是我们在网页中配置的TOKNE)
# 三个字符串按照字典序排序后,对排序后得到的字符串数组使用哈希加密算法得到。
signature = data.signature
# 时间戳
timestamp = data.timestamp
# 随机数
nonce = data.nonce
# 随机数,我们将所得到的参数,按前面的方式生成生成hashcode,将其与signature进行比对,
# 若相等返回echostr,否则返回空
echostr = data.echostr
token = "xxxx" # 请按照公众平台官网\基本配置中信息填写
list = [token, timestamp, nonce]
# 按字典顺序排序
list.sort()
# 哈希算法加密list得到hashcode