Во время выполнения API запроса с помощью модуля requests – возникает ошибка:
RDS Cloudlibrary module started at 31, Aug 2015 at 16:08:37
Task have Done status: NG-5859
URL variable not found, will default – https://www.dev.domain.com/cloudlibrary/
Removing MATH_DLL via https://www.dev.domain.com/cloudlibrary/data/488fe16f-bb89-4cc0-b972-c8b9044dc7ed
Traceback (most recent call last):
…
File “C:RDSmanagerlibexternalrds_clc.py”, line 92, in cloud_delete
data_delete = self.session.delete(url)
…
requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)
Метод выглядит так:
def cloud_delete(self, url): """Delete object from Cloudlibrary""" try: data_delete = self.session.delete(url) data_delete.raise_for_status() self.logger.logger.info('Result code: {}'.format(data_delete.status_code)) except requests.exceptions.HTTPError as error: raise CLCException(self.logger, 'Cloudlibrary request error: {}'.format(error)) except requests.exceptions.TooManyRedirects: self.logger.logger.info('Authentication failed!') sys.exit(6)
Ошибка вызвана самодписанным сертификатом на стороне сервера, через который выполняется API-запрос.
Для решения – можно использовать параметр verify=False
, например:
... data_put = self.session.put(url, data=infile, verify=False) ...