簡體   English   中英

如何在 Retrofit - Android 中將參數傳遞給 POST 請求

[英]How to pass parameters to POST request in Retrofit - Android

在我的基於 Java 的 Android 應用程序中,我必須調用 POST API 以保存用戶數據。 它接受以下輸入參數: RequestBody 然后它給出以下 output: ResponseBody 如何使用 Retrofit 執行此操作? 謝謝

Retrofit 的重點是發送對象而不是文本正文。 來自官方文檔

@POST("users/new")
Call<User> createUser(@Body User user);

然后,您使用 Retrofit 接口實例化您的服務,並使用接口函數執行調用

您可以像這樣創建 class :

class Parameters{

 User user;

 class User {
   String username;
   String fullname;
    //more fields, getters and setters..
 }
// getter and setter for user
}

然后通過傳遞 object 使用 retrofit POST:

@Headers("Content-Type:plain/text; charset=utf-8")
@POST("/postuser")
Call<Response> postData(@Body Parameters params);

響應 object 有一個 body() 成員,其中包含您預期的響應,而女巫反過來也可以包裝在 object 中:

class MyResponse{
String status;
String message;
}

所以你可以改變你的電話如下:

@Headers("Content-Type:plain/text; charset=utf-8")
@POST("/postuser")
Call<MyResponse> postData(@Body Parameters params);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM