gpt4 book ai didi

java - 使用 curl 发布, postman 工作但 java 给出 SSL 错误

转载 作者:太空宇宙 更新时间:2023-11-03 14:39:57 25 4
gpt4 key购买 nike

我发出一个基本的 post 请求以在 Java 中获取 token ,但我总是收到 SSL 证书握手错误:

        DefaultHttpClient httpclient = new DefaultHttpClient();
String encoding = "YXBwLmJidmEuS3JlZGlsdafasdfasdf0bzpUeHZUUDJLVEdiKkhmbGNJeHNUDQ1d2tEU1dGak9TUk1zSVN3d2owYzJlJE9adU5rVmVZ";
HttpPost httppost = new HttpPost("https://connect.bbva.com/token?grant_type=client_credentials");
httppost.setHeader("Authorization", "Basic " + encoding);
HttpResponse response = httpclient.execute(httppost);

我已经尝试用 Advanced Rest Client 和 shell 命令做同样的事情,它就像一个魅力:

curl -X POST -i  -H "Content-Type: application/json" -H "Authorization: Basic YXBwLmJidmEuS3JlZGl0bzpUeHZUUDJLVEdiKkhmbGNJeHNUNHU2RDE3MkFFa2R2QDQ1d2tEU1dGak9TUk1zSVN3d2owYzJlJE9adU5rVmVZ" https://connect.bbva.com/token?grant_type=client_credentials

我还使用正确的信任库选项检查了 curl,我的默认 java 使用它来检查信任库是否没有问题并且没有一个:

-cacerts=/usr/lib/jvm/java-8-oracle/jre/lib/security/cacerts

现在我也在 Java 中使用 java.net.URLConnection 库进行测试,但它不起作用。

我也用内容类型测试过,但无济于事:

("Content-Type", "application/json;charset=UTF-8");

我还在 java7 和 java8,oracle 上测试过。

作为一个基本的、平庸的 Java 开发人员,我已经尝试了一切。

顺便说一句,如果有帮助的话,我的 curl 响应带有以下 header :

HTTP/1.1 200 OK
Date: Thu, 18 May 2017 09:29:11 GMT
Server: Apache-Coyote/1.1
X-Frame-Options: DENY
Strict-Transport-Security: max-age=63072000; includeSubdomains; preload
Cache-Control: no-cache
Pragma: no-cache
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Content-Type: application/json;charset=UTF-8
Expires: 0
Pragma: no-cache
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 1; mode=block
Content-Length: 751

我还检查了 ssl-debug-logs 使用:

System.setProperty("javax.net.debug", "all");

并且它使用了正确的信任库。

最佳答案

我只是通过将 Java 版本从 java-oracle8 更改为 java-openjdk8 来修复此错误。

关于java - 使用 curl 发布, postman 工作但 java 给出 SSL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44044119/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com