服务器地址:http://106.55.23.112/
appid:wx8f7ca7889b24911e
请求验证身份信息:
返回的echostr:
服务器配置失败,
服务器的日志消息显示已经微信的get请求已经进入并成功返回了 “echostr”的值
但是依然显示token配置失败。
------------------------------------------------------------------------------------------------------------------------------------
有官方来帮忙解决一下吗?另外发现这个社区很多人都提问了该问题,但是大部分都没有得到解决,贵公司是否可以归类一些关于这类问题有可能出现的原因呢?
你把URL的IP换成有效的域名试试?
官方文档里的URL应该限定为域名,IP估计不行。
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Interface_field_description.html
from fastapi import FastAPI import hashlib app = FastAPI() @app.get("/hello") def hello(): return "hello" @app.get("/verify") def verify(signature,timestamp,nonce,echostr): print(signature,timestamp,',',nonce,',',echostr) token = 'zhangboyi' li = [token, timestamp, nonce] li.sort() sha1 = hashlib.sha1() # list(map(sha1.update, [x.encode('utf-8') for x in li])) sha1.update(li[0].encode('utf-8')) sha1.update(li[1].encode('utf-8')) sha1.update(li[2].encode('utf-8')) hashcode = sha1.hexdigest() print("handle/GET func: hashcode, signature: ", hashcode, signature) if hashcode == signature: return echostr.encode('utf-8') else: return '' import uvicorn if __name__ == '__main__': uvicorn.run(app,host='0.0.0.0')
楼主的地址确认外网可以访问吗?我这边是打不开的。
只返回echostr,前后不要有任何其他输出。
http://106.55.23.112/verify?signature=d045ee48f71699dfb92cf3c689ae99f5c90a5212&echostr=2347261734101712626×tamp=1603462768&nonce=1446452478
测试:http://106.55.23.112/hello