Skip to content

Commit 6e3b7ff

Browse files
Fix the esi problem for Serenity when setting
1 parent ff14855 commit 6e3b7ff

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

service/esiAccess.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# noinspection PyPackageRequirements
22
from collections import namedtuple
33

4+
import requests
45
from logbook import Logger
56
import uuid
67
import time
@@ -72,6 +73,8 @@ def __init__(self):
7273
self._session.headers.update(self._basicHeaders)
7374
self._session.proxies = NetworkSettings.getInstance().getProxySettingsInRequestsFormat()
7475

76+
self.mem_cached_session = {}
77+
7578
# Set up cached session. This is only used for SSO meta data for now, but can be expanded to actually handle
7679
# various ESI caching (using ETag, for example) in the future
7780
self.cached_session = CachedSession(
@@ -88,11 +91,20 @@ def __init__(self):
8891
def init(self, server_base):
8992
self.server_base: config.ApiServer = server_base
9093
self.server_name = self.server_base.name
91-
meta_call = self.cached_session.get("https://%s/.well-known/oauth-authorization-server" % self.server_base.sso)
94+
try:
95+
meta_call = self.cached_session.get("https://%s/.well-known/oauth-authorization-server" % self.server_base.sso)
96+
except:
97+
# The http data of expire_after in evepc.163.com is -1
98+
meta_call = requests.get("https://%s/.well-known/oauth-authorization-server" % self.server_base.sso)
99+
92100
meta_call.raise_for_status()
93101
self.server_meta = meta_call.json()
94102

95-
jwks_call = self.cached_session.get(self.server_meta["jwks_uri"])
103+
try:
104+
jwks_call = self.cached_session.get(self.server_meta["jwks_uri"])
105+
except:
106+
jwks_call = requests.get(self.server_meta["jwks_uri"])
107+
96108
jwks_call.raise_for_status()
97109
self.jwks = jwks_call.json()
98110

0 commit comments

Comments
 (0)