java - 改造不同的调用和响应 json 主体

标签 java android retrofit2

如何使用不同类型的调用和响应主体来改造 PUT? 我有一个错误限制。类型必须相同 <T> and <T> 。 响应bodie可以包含int值,但call不应该,因为当我用int值初始化CallBody对象时,它已经包含n1=0,并将此参数发送到服务器。

@PUT("/api/test")
Call<CallBody> test1(@Body CallBody params_body);

public class CallBody {
    public String id;
}

public class ResponceBody {
    public String s1;
    public int n1;
}

public void Test(String id) {
        CallBody params_body = new CallBody();
        params_body.id = id;

        Call<CallBody> call1 = apiInterface.test1(params_body);
        call1.enqueue(new Callback<CallBody>() {
            @Override
            public void onResponse(Call<CallBody> call, Response<ResponceBody> response) {
                ResponceBody response = response.body();
            }

            @Override
            public void onFailure(Call<CallBody> call, Throwable t) {
                call.cancel();
            }
        });
    }

最佳答案

尝试,

public class ResponceBody {
    public String s1;
    public Integer n1;
}

关于java - 改造不同的调用和响应 json 主体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60206527/

相关文章:

java - twitter4j 和 twitter 时间戳处理

java - 多维数组 bufferedreader

java - JPA - 同一类的列数错误。应该是 2

java - Exo播放器 : setNotificationListener is deprecated

java - 下载文件时无法更新循环进度条

java - 试图使我的 Java 方法通用,以便它可以比较字符串或日期

android - 如何更改主屏幕小部件中的 TextView 字体样式?

android - AdMob 广告未显示在模拟器中

java - 将 retrofit 回调值转换为返回封装对象

java - 在 Android 上使用超链接 API 的最佳方式是什么?