我有包含证书、私钥和信任链的 .pem 文件,以及我使用openssl pkcs12 -export从中生成的 .p12 文件:
openssl pkcs12 -export -out file.p12 -in file.pem -inkey file.pem -passin pass:password -passout pass:password
我的 PEM 文件结构:
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
Run Code Online (Sandbox Code Playgroud)
我正在使用此 curl 请求从 API 获取数据:
curl --cert file.p12:password --cacert file.pem --resolve destinationHost.com:443:100.100.100.100 -H "Content-Type: text/plain" https://destinationHost.com/api
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用 Java 来实现这个请求(无论是哪个库)。
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.config.RegistryBuilder; …Run Code Online (Sandbox Code Playgroud)