Исправление SSLError в запросе django к внешнему API
У меня есть несколько сайтов, сделанных на django, и я никогда раньше не видел такой ошибки.
на этом сайте представлены данные из API, поэтому я подключил API с помощью
try:
r = requests.post(url, data=json.dumps(dados), headers=headers, timeout=30)
except Timeout:
raise EmptyResultSet(f'Erro API TIMEOUT')
if r.status_code == requests.codes.ok:
search = r.json()
else:
search = []
Итак, я связываю запрос с сервером API, проверяю таймаут, чтобы django отправил мне письмо об этом (с EmptyResultSet, потому что сайт не может отображаться правильно, если данные не получены). затем, если код в порядке, он получает данные, а если есть ошибка, он устанавливает search = [], который получает данные из кэша позже в коде
этот сниппет работал нормально, но затем мой рабочий сервер начал получать эту ошибку:
HTTPSConnectionPool(host='****', port=443): Max retries exceeded with url: /api/Site/Busca (Причина - SSLError(SSLError('Ни один шифр не может быть выбран.')))
host hidden for safety
Итак, на локальных машинах сайт работает просто отлично, и люди, стоящие за API, сказали, что мой сервер не внесен в черный список на этот раз, так что я не знаю, где искать решение. Версия Django - 3.2.14, requests - 2.28.1 и urllib3 - 1.26.11