Saya mencoba menggunakan httpie dengan JIRA REST API.
Perintah gagal dengan "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'
Pemahaman saya adalah bahwa requests
biasanya akan memunculkan kesalahan itu jika sertifikat SSL tidak valid. Pesan tersebut tampaknya menyiratkan bahwa sertifikat tersebut untuk *.mongodb.com, yang tidak akan termasuk dalam jira.mongodb.org.
Namun, perintah yang sama berfungsi dengan baik melalui CuRL, tanpa peringatan 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":[]}
Selain itu, ini juga dimuat dengan baik di browser saya (Chrome), dan tidak ada peringatan SSL yang diberikan.
Adakah pemikiran tentang apa yang mungkin terjadi?
Ini ada hubungannya dengan SNI. Anda perlu menginstal dependensi tambahan yang akan Anda dapatkan jika Anda melakukan 'pip install request[security]'
Dikirim dari perangkat Android saya dengan K-9 Mail. Mohon maafkan singkatnya saya.
Memiliki masalah yang sama tetapi satu-satunya cara saya bisa membuat permintaan berfungsi adalah jika saya menyetel verifikasi ke False. Saya mencoba memutakhirkan permintaan dan menginstal permintaan [keamanan] dan bahkan mengatur verifikasi ke file sertifikat.
Saya juga mengalami masalah ini. Saya perlu memutakhirkan requests[security]
dan httpie
:
pip install --upgrade requests[security]
pip install --upgrade httpie
Kesalahan ini harus hilang dalam versi HTTPie yang lebih baru yang mengandalkan Python 3.6+.
Komentar yang paling membantu
Ini ada hubungannya dengan SNI. Anda perlu menginstal dependensi tambahan yang akan Anda dapatkan jika Anda melakukan 'pip install request[security]'
Dikirim dari perangkat Android saya dengan K-9 Mail. Mohon maafkan singkatnya saya.