美文网首页
Day 2620:学习

Day 2620:学习

作者: kafkaliu | 来源:发表于2024-03-29 23:24 被阅读0次

处理access token失效问题:

cache 设置 ttl

异常时重试机制

def __retry_on_access_token_expired():

r"""

内部装饰器。access token失效时清除缓存并重试请求。https://developer.work.weixin.qq.com/document/path/91039

错误码42001为access_token已过期。https://developer.work.weixin.qq.com/devtool/query

"""

def decorator(func):

@wraps(func)

def wrapper(url, **kwargs):

response = func(url, **kwargs)

if response.headers.get("error-code") == "42001":

get_access_token.cache_clear()

return func(url, **kwargs)

else:

return response

return wrapper

return decorator

@__retry_on_access_token_expired()

def wecom_post(url, **kwargs):

r"""

发送企业微信POST请求。内置access_token。

:param url: 请求url

"""

params = kwargs.pop("params", {})

params.update({"access_token": get_access_token()})

return requests.post(

url=url,

params=params,

**kwargs,

)

相关文章

网友评论

      本文标题:Day 2620:学习

      本文链接:https://www.haomeiwen.com/subject/ugsmtjtx.html