Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中使用改装库获取空响应_Android_Retrofit - Fatal编程技术网

在android中使用改装库获取空响应

在android中使用改装库获取空响应,android,retrofit,Android,Retrofit,我正在我的应用程序中使用改装库进行网络请求。我的代码如下所示: 1。java(接口) 3.Messages.java public class Message { String user; String message; //String roomID; public String getUser() { return user; } public void setUser(String user) {

我正在我的应用程序中使用改装库进行网络请求。我的代码如下所示:

1。java(接口)

3.Messages.java

    public class Message {

    String user;
    String message;
    //String roomID;

    public String getUser() {
        return user;
    }

    public void setUser(String user) {
        this.user = user;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    @Override
    public String toString() {
        return(message);
    }
}
    public class Messages {
    List<Message> items;
}
public class MainActivity extends AppCompatActivity {
String roomID = "548b737c0eadfb00eb93891bb28242e5";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("http://pms.vebific.com:81/chat/index/")
            .addConverterFactory(GsonConverterFactory.create())
            .build();

    MyAPI myAPI = retrofit.create(MyAPI.class);
    Call<Messages> call = myAPI.loadMessages(roomID);

    call.enqueue(new Callback<Messages>() {
        @Override
        public void onResponse(Response<Messages> response, Retrofit retrofit) {
            Log.e("Response", String.valueOf(response.body()));
        }

        @Override
        public void onFailure(Throwable t) {
            Log.e("Error","---------------");
        }
    });

}
预期响应:

 [
  {
"_id": {
"$id": "56963d96da036c6c05815e63"
},
"room_id": "548b737c0eadfb00eb93891bb28242e5",
"user": "Jeevan Verma",
"id": 479,
"message": "\\uD83D\\uDC30",
"date": 1481587559734,
"status": "sent"
},
{
"_id": {
"$id": "56963d8cda036c6c05815e62"
},
"room_id": "548b737c0eadfb00eb93891bb28242e5",
"user": "Jeevan Verma",
"id": 479,
"message": "\\uD83D\\uDE0A",
"date": 1481587559734,
"status": "sent"
},
{
"_id": {
"$id": "56964454da036c6c05815e64"
},
"room_id": "548b737c0eadfb00eb93891bb28242e5",
"user": "Jeevan Verma",
"id": 479,
"message": "\\uD83D\\uDC2D",
"date": 1481589296434,
"status": "sent"
}
]
当我在浏览器中使用它时,我会得到响应


在使用改型时,我得到了空响应。我想我可能遗漏了什么。请帮助我修复它。请告诉我如何使用改装读取响应。

将api定义更改为返回
Call
,而不是
Call

CallloadMessages(@Path(“roomID”)字符串roomID);

MyAPI-MyAPI=reformation.create(MyAPI.class);
Call Call=myAPI.loadMessages(roomID);
call.enqueue(新回调(){
@凌驾
公共响应(响应、改装){
Log.e(“Response”,String.valueOf(Response.body());
}
@凌驾
失效时的公共无效(可丢弃的t){
Log.e(“错误”、“--------------”;
}
});

将api定义更改为返回
Call
,而不是
Call

CallloadMessages(@Path(“roomID”)字符串roomID);

MyAPI-MyAPI=reformation.create(MyAPI.class);
Call Call=myAPI.loadMessages(roomID);
call.enqueue(新回调(){
@凌驾
公共响应(响应、改装){
Log.e(“Response”,String.valueOf(Response.body());
}
@凌驾
失效时的公共无效(可丢弃的t){
Log.e(“错误”、“--------------”;
}
});

你的意思是
响应
为空吗?@bigdestropher,24599-24599/com.example.deepakr.E/response﹕ Null尝试从基本URL中删除最后一个斜杠(
/
)。现在执行onFailure()方法时,这可能会对您有所帮助。01-22 12:39:32.916 26405-26405/com.example.deepakr.E/错误﹕ ---------------尝试记录可丢弃的
并发布堆栈跟踪。您的意思是
响应
为空吗?@bigdescroyer,24599-24599/com.example.deepakr.E/response﹕ Null尝试从基本URL中删除最后一个斜杠(
/
)。现在执行onFailure()方法时,这可能会对您有所帮助。01-22 12:39:32.916 26405-26405/com.example.deepakr.E/错误﹕ ---------------尝试记录可丢弃的
并发布堆栈跟踪
http://pms.vebific.com:81/chat/index/548b737c0eadfb00eb93891bb28242e5
 [
  {
"_id": {
"$id": "56963d96da036c6c05815e63"
},
"room_id": "548b737c0eadfb00eb93891bb28242e5",
"user": "Jeevan Verma",
"id": 479,
"message": "\\uD83D\\uDC30",
"date": 1481587559734,
"status": "sent"
},
{
"_id": {
"$id": "56963d8cda036c6c05815e62"
},
"room_id": "548b737c0eadfb00eb93891bb28242e5",
"user": "Jeevan Verma",
"id": 479,
"message": "\\uD83D\\uDE0A",
"date": 1481587559734,
"status": "sent"
},
{
"_id": {
"$id": "56964454da036c6c05815e64"
},
"room_id": "548b737c0eadfb00eb93891bb28242e5",
"user": "Jeevan Verma",
"id": 479,
"message": "\\uD83D\\uDC2D",
"date": 1481589296434,
"status": "sent"
}
]
Call<List<Message>>loadMessages(@Path("roomID") String roomID);
MyAPI myAPI = retrofit.create(MyAPI.class);
    Call<List<Message>> call = myAPI.loadMessages(roomID);

    call.enqueue(new Callback<List<Message>>() {
        @Override
        public void onResponse(Response<List<Message>> response, Retrofit retrofit) {
            Log.e("Response", String.valueOf(response.body()));
        }

        @Override
        public void onFailure(Throwable t) {
            Log.e("Error","---------------");
        }
    });