django
为后端,通过前端wx.login()
发来的code去微信服务器获取openid
和session_key
过程耗时太长(15s左右),但通过浏览器直接访问则速度较快。
Ubuntu18.04 LTS
, Django2.0.8
, Python3.6.5
下面是我建立的一个简单的获取openid的程序:
class WeChatApi():
def __init__(self, appid, secret):
self.appid = appid
self.secret = secret
def get_openid_and_session_key(self, code):
import time
start = time.perf_counter()
parmas = {
'appid': self.appid,
'secret': self.secret,
'js_code': code,
'grant_type': 'authorization_code'
}
url = 'https://api.weixin.qq.com/sns/jscode2session'
r = requests.get(url, params=parmas)
openid = r.json().get('openid', '')
end = time.perf_counter()
print('获取openid用时:', end-start, '秒')
return openid
运行结果:程序正常返回,但是耗时太久,15s左右(已经反复测试)。使用postman
测试时,用时相近也大约15s。但是直接把接口url粘贴到浏览器中,则很快就能得到结果。
这种现象产生的原因是什么?该如何解决?
慕粉1610489134
千巷猫影
汪汪一只猫
相关分类