Просит пост повесить на сервер - PullRequest
0 голосов
/ 18 октября 2018

Я написал класс кэширования, который вызывает конечную точку веб-приложения, которая загружает данные сервера SQL в кэш-память повторного выполнения.Процесс включает в себя:

1) Получение токена доступа для OneLogin 2) Получение данных аутентификации SAML 3) Вход в приложение 4) Отправка в конечную точку веб-API, которая загружает данные с сервера sql в redis

Код работает и возвращает 200 статусов на моем локальном компьютере для конечной точки, выполнение которой занимает около 10 минут.Тем не менее, когда я запускаю код на сервере Ubuntu, проходит шаги входа в систему и возвращает статус 200 для сеанса входа в систему.После этого он зависает на последних шагах, которые вызывают конечную точку, которая загружает данные sql в redis.Я ясно вижу, что задание на загрузку redis заканчивается, глядя на сервер sql.Но по какой-то причине почтовый запрос Python просто зависает.Опять же, он работает на моем локальном ноутбуке.

Как ни странно, он работает как на моем локальном компьютере, так и на сервере, если это конечная точка, которая занимает короткое время, например 3 минуты.Может ли кто-нибудь осветлить?

cache = Cache("https://api.us.onelogin.com")
cache.client_id = CACHING['client_id']
cache.client_secret = CACHING['client_secret']
cache.app_url = CACHING['app_url']
cache.app_id = CACHING['app_id']
cache.login_username_or_email = CACHING['login_email']
cache.login_password = CACHING['login_password']
cache.sub_domain = CACHING['sub_domain']

logging.info("Get access token for onelogin")
access_token = cache.get_access_token()
logging.info("Get SAML auth data for onelogin")
saml_data = cache.get_saml_data(access_token)
logging.info("Login to application")
login_session = cache.login_to_app(saml_data)

flushing_endpoint = CACHING['flushing_endpoint']
caching_endpoint = CACHING['caching_endpoint']
logging.info("Flush cache by using endpoint: {}".format(flushing_endpoint))
flush_status = cache.flush_cache(flushing_endpoint, login_session)

if flush_status == 200:
    cache_status = cache.load_cache(caching_endpoint, login_session)
...