4.2 Truyền các tham số và thân request vào yêu cầu API trong lập trình android

Trong lập trình android sử dụng thư viện Retrofit, bạn có thể truyền các tham số và thân request vào yêu cầu API bằng cách sử dụng các annotation như @Query, @Path, @Body, @Field, @FieldMap, và @Part.

Dưới đây là một số ví dụ về cách sử dụng các annotation này:

  1. Truyền tham số truy vấn (Query parameters):
java
@GET("endpoint")
Call<ResponseBody> getData(@Query("param1") String param1, @Query("param2") int param2);
  1. Truyền đường dẫn động (Dynamic path segment):
java
@GET("endpoint/{id}")
Call<ResponseBody> getData(@Path("id") int id);
  1. Truyền thân request (Request body):
java
@POST("endpoint")
Call<ResponseBody> postData(@Body RequestBody requestBody);
  1. Truyền dữ liệu form (Form data):
java
@FormUrlEncoded
@POST("endpoint")
Call<ResponseBody> postData(@Field("param1") String param1, @Field("param2") int param2);
  1. Truyền dữ liệu form từ một Map (Form data from a Map):
java
@FormUrlEncoded
@POST("endpoint")
Call<ResponseBody> postData(@FieldMap Map<String, String> fieldMap);
  1. Truyền file (Multipart data):
java
@Multipart
@POST("endpoint")
Call<ResponseBody> postData(@Part("image") MultipartBody.Part imagePart, @Part("description") RequestBody description);

Lưu ý rằng, các annotation @Field, @FieldMap, và @Part chỉ được sử dụng trong phương thức POST và phải kết hợp với @FormUrlEncoded hoặc @Multipart annotation.

Các ví dụ trên chỉ minh họa một số cách sử dụng các annotation trong Retrofit. Bạn có thể kết hợp các annotation này và tuỳ chỉnh theo yêu cầu của API của bạn.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top