diff --git a/apps/common/sdk/im/wecom/__init__.py b/apps/common/sdk/im/wecom/__init__.py index 883104b66..f41dedf7e 100644 --- a/apps/common/sdk/im/wecom/__init__.py +++ b/apps/common/sdk/im/wecom/__init__.py @@ -207,7 +207,8 @@ class WeComTool(object): def check_state(self, state, request=None): return cache.get(state) == self.WECOM_STATE_VALUE or \ - request.session[self.WECOM_STATE_SESSION_KEY] == state + request.session.get(self.WECOM_STATE_SESSION_KEY) == state or \ + request.GET.get('state') == state # 在企业微信桌面端打开的话,重新创建了个 session,会导致 session 校验失败 def wrap_redirect_url(self, next_url): params = {