gpt4 book ai didi

java - Jersey 中的 Curl token 请求等效项

转载 作者:行者123 更新时间:2023-11-30 07:50:57 29 4
gpt4 key购买 nike

我知道这个问题已被问过一百万次,但我无法弄清楚我的 token 请求出了什么问题。

curl中的命令是

curl -v -X POST -H "Authorization: Basic XXXXXXXXXXXXXXXXXXXXXX" -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" -k -d "grant_type=password&username=XXXXX&password=XXXXX" https://localhost/sso/token

转换为 Jersey 后应该是:

Client client = Client.create();
WebResource webResource = client.resource("https://localhost/sso/token");
String appKey= "Basic XXXXXXXXXXXXXXXXXXXXXX"
String input="grant_type=password&username=XXXXX&password=XXXXX";
ClientResponse response = null;
response = webResource.
header("Authorization", appKey).
header("Content-Type", "/x-www-form-urlencoded;charset=UTF-8").
accept("application/json").
post(ClientResponse.class, input);




if (response.getStatus() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
+ response.getStatus());
}
String output = response.getEntity(String.class);
System.out.println("Server response .... \n");
System.out.println(output);
} catch (Exception e) {
e.printStackTrace();
}**

我得到的答案:

java.lang.RuntimeException: Failed : HTTP error code : 415 at com.javacodegeeks.enterprise.rest.jersey.jerseyclient.JerseyClientAccessToken.main(JerseyClientAccessToken.java:67)

有人可以告诉我我做错了什么吗?

最佳答案

这个:

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

与此不同:

Content-Type: "application/x-www-form-urlencoded;charset=UTF-8" 

所以你应该改变它。这就是您收到 415 错误(不支持的媒体类型)的原因。

关于java - Jersey 中的 Curl token 请求等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33350916/

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