Java 使用Gson+;截击没有得到回应
因此,我尝试使用Google的Gson库和用于HTTP请求的截取来解析json中的一组对象。我的问题是,代码好像没有在响应中“命中”Java 使用Gson+;截击没有得到回应,java,android,json,gson,android-volley,Java,Android,Json,Gson,Android Volley,因此,我尝试使用Google的Gson库和用于HTTP请求的截取来解析json中的一组对象。我的问题是,代码好像没有在响应中“命中”OnResponsecall。我试着在函数中添加一个简单的日志打印输出,看看它是否有任何作用 我的GsonRequest课程直接来自。我根据对问题的回答构建了这些方法 这是我的代码: private void runVolleyJson() throws AuthFailureError { GsonRequest<Meetings> getMe
OnResponse
call。我试着在函数中添加一个简单的日志打印输出,看看它是否有任何作用
我的GsonRequest
课程直接来自。我根据对问题的回答构建了这些方法
这是我的代码:
private void runVolleyJson() throws AuthFailureError {
GsonRequest<Meetings> getMeetings = new GsonRequest<Meetings>(AUTH_URL, Meetings.class, getHeaders(),
createMyReqSuccessListener(),
createMyReqErrorListener());
helper.add(getMeetings);
}
private Response.Listener<Meetings> createMyReqSuccessListener() {
return new Response.Listener<Meetings>() {
@Override
public void onResponse(Meetings response) {
// NOTHING HAPPENS FROM HERE!
try {
Log.d("response", response.toString());
} catch (Exception e) {
e.printStackTrace();
}
// Do whatever you want to do with response;
// Like response.tags.getListing_count(); etc. etc.
}
};
}
private Response.ErrorListener createMyReqErrorListener() {
return new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
// Do whatever you want to do with error.getMessage();
}
};
}
public Map<String, String> getHeaders() throws AuthFailureError {
HashMap<String, String> map = new HashMap<>();
map.put("Content-Type", "application/json;");
map.put("Authorization", "Bearer <sometoken>");
return map;
}
尝试在开头添加这一行
RequestQueue helper = Volley.newRequestQueue(mContext);
添加这些行
RequestQueue requestQueue = Volley.newRequestQueue(context);
requestQueue.add(stringRequest);
如果不想将响应保存在缓存中,请添加此项
requestQueue.add(stringRequest);
根据我个人的观点,如果你通过了应用程序上下文就更好了 尝试生成一个JsonObjectRequest,然后用GSON解析响应,看看请求类本身是否有缺陷。众所周知,谷歌文档中有一些过时的培训数据挥之不去。有人打电话给谷歌文档吗?。。如果是,那么必须已经完成的日志是什么,或者helper.add(getMeetings)调用将抛出一个NPEI。我不认为这真的回答了问题,我的helper.add正在调用在我的应用程序类中定义的请求队列
requestQueue.add(stringRequest);