Com base na documentação do HTTPie que você vinculou, parece que você não está usando o comando http
corretamente. As opções --cert
e -cert-key
que você especificou são para autenticação de certificado de cliente (no lugar de um token de API, por exemplo). Não posso ter certeza, mas acredito que você não esteja usando a autenticação de certificado de cliente.
Supondo que você tenha um certificado SSL auto-assinado em //anaconda/lib/python3.6/site-packages/sslserver/certs/development.crt
, você tem duas opções principais:
Trate o certificado auto-assinado como uma CA
Note: You should be sure you have the right certificate, or you risk the same issues as the second option below
http --verify=//anaconda/lib/python3.6/site-packages/sslserver/certs/development.crt https://127.0.0.1:8000/
ou, com wget
ou curl
:
curl --cacert //anaconda/lib/python3.6/site-packages/sslserver/certs/development.crt https://127.0.0.1:8000/
wget --ca-certificate=//anaconda/lib/python3.6/site-packages/sslserver/certs/development.crt https://127.0.0.1:8000/
Ignorar a validação SSL
Note: This method will still encrypt your data, but make no attempt to authenticate the remote endpoint (i.e. you could be encrypting data and sending it to an attacker). Therefore, this is NOT RECOMMENDED for production use.
http --verify=no https://127.0.0.1:8000/
Além disso, observe que há outros clientes http de linha de comando mais comumente usados:
curl -k https://127.0.0.1:8000/
wget --no-check-certificate https://127.0.0.1:8000/
Vamos criptografar
Por fim, você pode considerar obter um certificado SSL válido. Vamos criptografar oferece gratuitamente, e há muitas outras ACs que você pode considerar se quiser pagar algo a alguém. Com um certificado SSL válido (e um nome DNS válido), nenhuma opção adicional deve ser necessária em nenhum dos clientes mencionados.