gpt4 book ai didi

java - 如何通过在 Okhttp 中传递对象来发出 POST 请求?

转载 作者:搜寻专家 更新时间:2023-11-01 07:44:22 25 4
gpt4 key购买 nike

这是我的 Json 主体:

{
"username": {
"country": "IN",
"number": "9620494812"
},
"password": "119209"
}

我正在尝试使用 Okhttp 发出 POST 请求,如下所示:

Username username = new Username("IN" , "9620494812");

JSONObject postData = new JSONObject();

try {
postData.put("username" , username);
postData.put("password" , "119209");

} catch (JSONException e) {
e.printStackTrace();
}

RequestBody body = RequestBody.create(MEDIA_TYPE , postData.toString());

Request request = new Request.Builder().url("https://www.gruppie.in/api/v1/login")
.method("POST" , body).build();

我已经检查了请求,但我仍然收到错误

响应是:

{"status":401,"type":"about:blank","title":"Unauthorized"}

我在这里做错了什么?

最佳答案

根据您的 JSON,您必须像这样发送 JSON 请求。试试这个

    JSONObject postData = new JSONObject();
JSONObject userJson=new JSONObject();
try {
userJson.put("country","IN");
userJson.put("number","9620494812");
} catch (JSONException e) {
e.printStackTrace();
}
try {
postData.put("username" , userJson);
postData.put("password" , "119209");

} catch (JSONException e) {
e.printStackTrace();
}

关于java - 如何通过在 Okhttp 中传递对象来发出 POST 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47811482/

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