【问题标题】:How to POST an ArrayList with a String at the same time in RETROFIT?如何在 RETROFIT 中同时发布带有字符串的 ArrayList?
【发布时间】:2019-11-27 20:48:54
【问题描述】:

我正在尝试在 Retrofit 中发布一个 ArrayList 和一个字符串值。我怎样才能在同一个帖子中发送它们? 我已经尝试过了,但是没有用。 谢谢。

Etiket_post.java

@POST("/api/r_etiket")
Call<Result> post_etiket(@Body List< EtiketItem_List> items, @Body String FileNo);

Print_Screen.java

Retrofit retrofit = new Retrofit.Builder()
        .baseUrl("myURL")
        .addConverterFactory(GsonConverterFactory.create())
        .build();
Etiket_Post etiket_post = retrofit.create(Etiket_Post.class);
String FileNo = FileId;
ArrayList<EtiketItem_List> items = new ArrayList<>();
for (int e = 0; e < okutulan_list.size(); e++) {
    items.add(new EtiketItem_List(
        okutulan_list.get(e).STOK_KODU,
        okutulan_list.get(e).STOK_ADI,
        okutulan_list.get(e).OlcuBrim,
        okutulan_list.get(e).STHAR_GCMIK));
}
Call<Result> call = etiket_post.post_etiket(items, FileNo);
call.enqueue(new Callback<Result>() {
    @Override
    public void onResponse(Call<Result> call, Response<Result> response) {
        Toast.makeText(Print_Screen.this, response.body().result, Toast.LENGTH_LONG).show();
    }

    @Override
    public void onFailure(Call<Result> call, Throwable t) {
        Toast.makeText(Print_Screen.this, t.getLocalizedMessage(), Toast.LENGTH_LONG).show();
    }
});

【问题讨论】:

    标签: java android post retrofit


    【解决方案1】:

    您可以像这样使用 Retrofit2 以原始格式发送数据。

        {
      "String1" :"anyString",
      "arrayList":[
           {
            "A":"Appple",
            "B":"ball"
        }
      ]
    

    }

    模型类示例

     @SerializedName("user_id")
    @Expose
    private String user_id;
    
    @SerializedName("product")
    @Expose
    List<OneProductModel> oneProductModels;
    
    
    public CartPost(String user_id, List<OneProductModel> oneProductModels) {
        this.user_id = user_id;
        this.oneProductModels = oneProductModels;
    }
    
    @POST("/api/r_etiket")
    Call<Result> post_etiket(@Body modelClass);
    

    【讨论】:

    • 非常感谢!它有效^^我没有想到这一点。这种方式既简单又实用。
    • 酷哥很乐意帮助你
    猜你喜欢
    • 2020-03-29
    • 2015-12-15
    • 1970-01-01
    • 1970-01-01
    • 2015-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多