Java 改进接口方法参数

Java 改进接口方法参数,java,android,json,retrofit2,Java,Android,Json,Retrofit2,我是第一次使用改型,所以它让我困惑。我试图通过POST将JSON对象传递给服务器。但是,我不知道如何为改装库创建模型类和方法。我的JSON如下所示: { "Header": { "UserDetails": "sample string 1", "ClientCode": "sample string 2", "Password": "sample string 3", "ViewType": 0, }, "MemberDetails": {

我是第一次使用改型,所以它让我困惑。我试图通过POST将JSON对象传递给服务器。但是,我不知道如何为改装库创建模型类和方法。我的JSON如下所示:

{
  "Header": {
    "UserDetails": "sample string 1",
    "ClientCode": "sample string 2",
    "Password": "sample string 3",
    "ViewType": 0,

  },
  "MemberDetails": {
    "Username": "sample string 1",
    "Password": "sample string 2",
    "MemberNo": "sample string 3",
    "MobileNo": "sample string 4"
  }
}
public interface MyServerAPI {
    @POST("users/memberlogin")
    Call<> login(@Body WHAT_OBJECT_TO_PASS_HERE?);
}
我已经生成了两个模型类:
Header和MemberDetails

接口类如下所示:

{
  "Header": {
    "UserDetails": "sample string 1",
    "ClientCode": "sample string 2",
    "Password": "sample string 3",
    "ViewType": 0,

  },
  "MemberDetails": {
    "Username": "sample string 1",
    "Password": "sample string 2",
    "MemberNo": "sample string 3",
    "MobileNo": "sample string 4"
  }
}
public interface MyServerAPI {
    @POST("users/memberlogin")
    Call<> login(@Body WHAT_OBJECT_TO_PASS_HERE?);
}
公共接口MyServerAPI{ @POST(“用户/成员登录”) 调用登录(@Body WHAT\u OBJECT\u TO\u PASS\u HERE?); }
我不知道是传递Header和MemberDetails对象,还是将它们放在ArrayList中并将其传递给login()。

接口类可以是这样的

    public interface MyServerAPI {
      @FormUrlEncoded
      @POST("users/memberlogin")
        Call<MyResponse> login(@Field("my_object") String myObject);
    }
String jsonString=new Gson().toJson(obj);
Call<MyResponse> myResponse = myGithubApi.login(jsonString);
公共接口MyServerAPI{ @FormUrlEncoded @POST(“用户/成员登录”) 调用登录(@Field(“my_object”)字符串myObject); } 然后可以像下面这样将对象作为json字符串传递

    public interface MyServerAPI {
      @FormUrlEncoded
      @POST("users/memberlogin")
        Call<MyResponse> login(@Field("my_object") String myObject);
    }
String jsonString=new Gson().toJson(obj);
Call<MyResponse> myResponse = myGithubApi.login(jsonString);
String jsonString=new Gson().toJson(obj);
调用myResponse=myGithubApi.login(jsonString);

这是您的答案,可能与刚才创建的另一个包含Header和MemberDetails类的类重复。@user2498079请尝试此操作。我如何看到json(由GSON从模型转换为json raw)被发送到服务器?尝试在服务器端回显“my_object”我不控制服务器端。无论如何,我已经在android应用程序上启用了调试,它表明完整的JSON没有被发送到服务器。发送到服务器的json中缺少模型类中的大多数字段