先说下结论:echostr返回int类型
如果这里已经解决了你的问题下面的废话就不用看了,这个方法不一定适用所有情况,我看网友还尝试了其他的方法也有管用的
起因是想搞个个人公众号,一是想看能不能赚点外快,二是想看能不能赚点外快
公众号想实现自动应答的功能,需要接入后端接口。万万没想到,这一步就掉坑里了
就是这里,Token里面的三个字母足以表达我的心情了
附上官方文档
不知道这是多少年前的文档了,如果你按照官方文档一步步来,那结果应该和我一样,token验证失败
然后我网上各种搜 “token验证失败”,以及官方的关于此问题的答复好多都是莫名其妙给个链接就不解答了,大家如果遇到也可以参考下
最终,在这个帖子下 找到了成功的方法,返回int!返回int!返回int!
亲测可行
最后附上附上python3代码
from fastapi import FastAPI
import hashlib
@app.get("/")
async def wx_get(signature, timestamp, nonce, echostr:int):
token = 'freebbx'
list = [token, timestamp, nonce]
list.sort()
sha1 = hashlib.sha1()
sha1.update(list[0].encode("utf-8"))
sha1.update(list[1].encode("utf-8"))
sha1.update(list[2].encode("utf-8"))
hashcode = sha1.hexdigest() #获取加密串
print ("handle/GET func: hashcode, signature: ", hashcode, signature)
if hashcode == signature:
return echostr
else:
return ""
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=80)