亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將curl映射到java okhttp?

如何將curl映射到java okhttp?

千巷貓影 2023-08-16 10:16:32
我有一個基本的卷曲,如下所示:curl -X POST \    'https://aogt.pl/auth/' \    -H 'Authorization: Basic NGZjMjExNWQyYTZk' \    -H 'Content-Type: application/x-www-form-urlencoded' \    -d 'client_id=4fc2115'當我在 Ubuntu 等控制臺中運行它時,一切正常,我得到了良好的響應?,F在我想使用 okhttp 將這個curl 映射到java 代碼中。我寫下面的代碼:public class TestMain {    private static final MediaType JSON = MediaType.parse("application/json; charset=utf-8");    public static void main(String[] args) throws IOException {        String data = "client_id=4fc2115";        RequestBody body = RequestBody.create(JSON, data);        Request request = new Request.Builder()                .url("https://aogt.pl/auth/")                .addHeader("Authorization", "Basic NGZjMjExNWQyYTZk")                .addHeader("Content-Type", "application/x-www-form-urlencoded")                .post(body)                .build();        OkHttpClient client = new OkHttpClient();        Response response = client.newCall(request).execute();        System.out.println(response.body().string());    }}pom 文件如下所示:<dependencies>   <dependency>      <groupId>com.squareup.okhttp3</groupId>         <artifactId>okhttp</artifactId>      <version>4.2.0</version>   </dependency></dependencies>問題是,當我運行此代碼時,我收到“400 Bad Request”,所以這是服務器的問題。我把上面的curl錯誤的映射成java代碼變成了http。問題可能出在 POST 正文中,因為它不是 JSON,但是我需要在這里更改什么,您能告訴我出了什么問題嗎?非常感謝。
查看完整描述

2 回答

?
斯蒂芬大帝

TA貢獻1827條經驗 獲得超8個贊

您要發送的請求的內容類型為“application/x-www-form-urlencoded”。因此將正文創建為 JSON 是行不通的。您應該嘗試通過以下方式塑造身體:

RequestBody body = new FormBody.Builder().add("client_id", "id_value").build();


查看完整回答
反對 回復 2023-08-16
?
婷婷同學_

TA貢獻1844條經驗 獲得超8個贊

RequestBody body = new FormBody.Builder() .add("client_id", "id_value"); 您好,希望您已經解決了這個問題。實際上,如果您想使用“form-body”而不是“json”發送請求,您可以輕松使用此類:“FormBody”。它繼承了RequestBody。



查看完整回答
反對 回復 2023-08-16
  • 2 回答
  • 0 關注
  • 255 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號