Httpie: "SSLError: nome do host<x>não corresponde<y>" - mas o Curl/Chrome não relata problemas de SSL?</y></x>

Criado em 26 set. 2014  ·  4Comentários  ·  Fonte: httpie/httpie

Estou tentando usar httpie com a API REST do JIRA.

O comando falha com um "SSLError: hostnamenão corresponde" mensagem de estilo:

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'

Meu entendimento é que requests normalmente deve gerar esse erro se o certificado SSL não for válido. A mensagem parece implicar que o certificado é para *.mongodb.com, no qual jira.mongodb.org não se enquadraria.

No entanto, o mesmo comando funciona bem via CuRL, sem avisos de 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":[]}

Além disso, ele também carrega bem no meu navegador (Chrome) e nenhum aviso SSL é dado.

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

Alguma opinião sobre o que pode estar acontecendo, por favor?

Comentários muito úteis

Isso tem a ver com o SNI. Você precisa instalar dependências extras que você obterá se fizer 'pip install requests[security]'

Enviado do meu dispositivo Android com K-9 Mail. Por favor desculpe minha brevidade.

Todos 4 comentários

Isso tem a ver com o SNI. Você precisa instalar dependências extras que você obterá se fizer 'pip install requests[security]'

Enviado do meu dispositivo Android com K-9 Mail. Por favor desculpe minha brevidade.

Tendo o mesmo problema, mas a única maneira de fazer uma solicitação funcionar é se eu definir verificar como False. Eu tentei atualizar solicitações e instalar solicitações [segurança] e até mesmo configurar a verificação para o arquivo cert.

Eu estava tendo esse problema também. Eu precisava atualizar requests[security] e httpie :

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

Esses erros devem desaparecer nas versões HTTPie mais recentes que dependem do Python 3.6+.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

filipesperandio picture filipesperandio  ·  3Comentários

a-x- picture a-x-  ·  7Comentários

rashthedude picture rashthedude  ·  3Comentários

cunde picture cunde  ·  7Comentários

loretoparisi picture loretoparisi  ·  6Comentários