class AuthApp: config = None def __init__(self): self.config = Config() def handle(self) -> Union[bool, str]: try: response = requests.post(self.config.getOauthTokenEndpoint(), { 'grant_type': 'client_credentials', 'client_id': self.config.getAppId(), 'client_secret': self.config.getAppSecret(), } ) except Exception as e: logger.error(e) return False responseDict = json.loads(response.text) if 'error' in responseDict: logger.error(responseDict.get('error')) return False if 'access_token' in responseDict: self.config.setAccessToken(AccessTokenEntity(responseDict)) return True
class AccessToken: config = None def __init__(self): self.config = Config() def handleRefreshToken(self, refresh_token: str) -> None: try: response = requests.post(self.config.getOauthTokenEndpoint(), { 'grant_type': 'refresh_token', 'refresh_token': refresh_token, }) result = json.loads(response.text) if 'access_token' in result: logger.info('Refresh access_token') self.config.setAccessToken(AccessTokenEntity(result)) except Exception as e: logger.error(e) def isTokenExpired(self) -> bool: return DateHelper.getCurrentUnixDate() > self.config.getAccessToken( ).getExpiresAt()