Httpie: "SSLError: имя хоста<x>не соответствует<y>"- но Curl/Chrome не сообщают о проблемах с SSL?</y></x>

Созданный на 26 сент. 2014  ·  4Комментарии  ·  Источник: httpie/httpie

Я пытаюсь использовать httpie с API JIRA REST.

Команда завершается с ошибкой «SSLError: hostnameне соответствует стилю сообщения:

bash-3.2$ http https://jira.mongodb.org/rest/api/2/search?jql=assignee=bob

http: error: SSLError: hostname 'jira.mongodb.org' doesn't match either of '*.mongodb.com', 'mongodb.com'

Насколько я понимаю, requests обычно должен выдавать эту ошибку, если сертификат SSL недействителен. Сообщение, похоже, подразумевает, что сертификат предназначен для *.mongodb.com, под который jira.mongodb.org не подпадает.

Однако та же команда отлично работает через CuRL без предупреждений SSL:

bash-3.2$ curl -v  https://jira.mongodb.org/rest/api/2/search?jql=assignee=free
* Adding handle: conn: 0x7fbe2b003a00
* Adding handle: send: 0
* Adding handle: recv: 0
* Curl_addHandleToPipeline: length: 1
* - Conn 0 (0x7fbe2b003a00) send_pipe: 1, recv_pipe: 0
* About to connect() to jira.mongodb.org port 443 (#0)
*   Trying 54.221.213.229...
* Connected to jira.mongodb.org (54.221.213.229) port 443 (#0)
* TLS 1.1 connection using TLS_RSA_WITH_AES_256_CBC_SHA
* Server certificate: jira.mongodb.org
* Server certificate: Go Daddy Secure Certification Authority
* Server certificate: Go Daddy Class 2 Certification Authority
> GET /rest/api/2/search?jql=assignee=free HTTP/1.1
> User-Agent: curl/7.30.0
> Host: jira.mongodb.org
> Accept: */*
>
< HTTP/1.1 200 OK
* Server Apache-Coyote/1.1 is not blacklisted
< Server: Apache-Coyote/1.1
< Vary: Accept-Encoding
< Cache-Control: no-cache, no-store, no-transform
< Content-Type: application/json;charset=UTF-8
< Date: Fri, 26 Sep 2014 02:14:22 GMT
< X-AREQUESTID: 134x54195573x2
< Transfer-Encoding: chunked
< X-AUSERNAME: anonymous
< Set-Cookie: atlassian.xsrf.token=ASGJ-NC06-6R0X-EKH7|4d65065ad638afb4fe7edb9b04e81379cc315e06|lout; Path=/
<
* Connection #0 to host jira.mongodb.org left intact
{"startAt":0,"maxResults":50,"total":0,"issues":[]}

Кроме того, он также отлично загружается в моем браузере (Chrome), и никаких предупреждений SSL не выдается.

screen shot 2014-09-26 at 12 12 05 pm

Любые мысли о том, что может происходить, пожалуйста?

Самый полезный комментарий

Это связано с SNI. Вам нужно установить дополнительные зависимости, которые вы получите, если сделаете «запросы на установку pip [безопасность]».

Отправлено с моего устройства Android с помощью K-9 Mail. Пожалуйста, простите меня за краткость.

Все 4 Комментарий

Это связано с SNI. Вам нужно установить дополнительные зависимости, которые вы получите, если сделаете «запросы на установку pip [безопасность]».

Отправлено с моего устройства Android с помощью K-9 Mail. Пожалуйста, простите меня за краткость.

У меня та же проблема, но единственный способ заставить запрос работать — установить для проверки значение False. Я попытался обновить запросы и установить запросы [безопасность] и даже настроить проверку в файле сертификата.

У меня тоже была эта проблема. Мне нужно было обновить requests[security] и httpie :

pip install --upgrade requests[security]
pip install --upgrade httpie

Эти ошибки должны исчезнуть в более новых версиях HTTPie, основанных на Python 3.6+.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

filipesperandio picture filipesperandio  ·  3Комментарии

mattotodd picture mattotodd  ·  3Комментарии

loretoparisi picture loretoparisi  ·  6Комментарии

tonsV2 picture tonsV2  ·  4Комментарии

chuma picture chuma  ·  3Комментарии