Android 我想发布嵌套的json数据

Android 我想发布嵌套的json数据,android,retrofit2,Android,Retrofit2,我想将此数据发布到服务器。我得到了一个空响应。您从服务器得到什么响应 { "test_id":5, "user_id":null, "org_id":2, "schedule_id":15, "group_id":null, "next_section_id":"", "current_section": { } } 我创建接口 @POST("take_tests") Call<Test_R

我想将此数据发布到服务器。我得到了一个空响应。您从服务器得到什么响应

 {
    "test_id":5,
    "user_id":null,
    "org_id":2,
    "schedule_id":15,
    "group_id":null,
    "next_section_id":"",
    "current_section":
       {

        }
    }
我创建接口

@POST("take_tests")
Call<Test_Responce> testRes (@Body JSONObject paramObject);
@POST(“参加测试”)
调用testRes(@Body JSONObject paramObject);
作用

try {
            JSONObject paramObject = new JSONObject();
            JSONObject current_section = new JSONObject();

            paramObject.put("test_id", 5);
            paramObject.put("user_id", "null");
            paramObject.put("org_id", 2);
            paramObject.put("schedule_id", 15);
            paramObject.put("group_id", "null");


            paramObject.put("current_section",current_section);


            Call<Test_Responce> userCall = api_interface.testRes(paramObject);
            userCall.enqueue(new Callback<Test_Responce>() {
                @Override
                public void onResponse(Call<Test_Responce> call, Response<Test_Responce> response) {
                    if (response.isSuccessful()){
                        Toast.makeText(getApplicationContext(),"success",Toast.LENGTH_SHORT).show();
                    }else {
                        Toast.makeText(getApplicationContext(),"else",Toast.LENGTH_SHORT).show();

                    }
                }

                @Override
                public void onFailure(Call<Test_Responce> call, Throwable t) {
                    Toast.makeText(getApplicationContext(),"fail",Toast.LENGTH_SHORT).show();
                }
试试看{
JSONObject paramObject=新的JSONObject();
JSONObject current_section=新JSONObject();
paramObject.put(“测试id”,5);
paramObject.put(“user_id”,“null”);
paramObject.put(“组织id”,2);
paramObject.put(“附表_id”,15);
paramObject.put(“组id”、“空”);
paramObject.put(“当前_段”,当前_段);
Call userCall=api_interface.testRes(paramObject);
enqueue(新回调(){
@凌驾
公共void onResponse(调用、响应){
if(response.issusccessful()){
Toast.makeText(getApplicationContext(),“success”,Toast.LENGTH\u SHORT.show();
}否则{
Toast.makeText(getApplicationContext(),“else”,Toast.LENGTH_SHORT.show();
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
Toast.makeText(getApplicationContext(),“fail”,Toast.LENGTH\u SHORT.show();
}

像这样发布您的数据

    private JsonObject ApiJsonMap() {
    JsonObject gsonObject = new JsonObject();
    try {
        JSONObject jsonObj_ = new JSONObject();
        jsonObj_.put("key", "value");
        jsonObj_.put("key", "value");
        jsonObj_.put("key", "value");
        JsonParser jsonParser = new JsonParser();
        gsonObject = (JsonObject) jsonParser.parse(jsonObj_.toString());
        //print parameter 
        Log.e("MY gson.JSON: ", "AS PARAMETER " + gsonObject);
    } catch (JSONException e) {
        e.printStackTrace();
    }
    return gsonObject;
}
您需要创建gson对象

要获得更多帮助,请一步一步地进行 检查我的ans:

尝试从
gson
使用
JsonObject
(不要使用
JsonObject

然后像这样改变界面

@POST("take_tests")
Call<Test_Responce> testRes(@Body JsonObject paramObject);
@POST(“参加测试”)
调用testRes(@Body JsonObject paramObject);
@POST("take_tests")
Call<Test_Responce> testRes(@Body JsonObject paramObject);