Android截击显示意外响应代码500
我使用截击库的方法POST。所有这些都可以正常工作,但不能显示“成功”。Android截击显示意外响应代码500,android,android-studio,android-volley,Android,Android Studio,Android Volley,我使用截击库的方法POST。所有这些都可以正常工作,但不能显示“成功”。 下面是我用我的服务器成功实现内容更新的代码 String uri = "http://192.168.0.103:3000/api/SampleParticipant"; StringRequest request = new StringRequest(Request.Method.POST, uri, new Response.Listener<String>() {
下面是我用我的服务器成功实现内容更新的代码
String uri = "http://192.168.0.103:3000/api/SampleParticipant";
StringRequest request = new StringRequest(Request.Method.POST, uri,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(getApplicationContext(), "Successful" , Toast.LENGTH_SHORT).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getApplicationContext(), "Error: " + error, Toast.LENGTH_SHORT).show();
}
})
{//Body
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put("participantId", editText2.getText().toString());
params.put("name", editText3.getText().toString());
return params;
}
};
// Create Volley
RequestQueue queue = Volley.newRequestQueue(this);
queue.add(request);
stringuri=”http://192.168.0.103:3000/api/SampleParticipant";
StringRequest=新的StringRequest(request.Method.POST,uri,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
Toast.makeText(getApplicationContext(),“Successful”,Toast.LENGTH_SHORT.show();
}
},
新的Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
Toast.makeText(getApplicationContext(),“Error:+Error,Toast.LENGTH_SHORT).show();
}
})
{//正文
@凌驾
受保护的映射getParams(){
Map params=新的HashMap();
参数put(“participantId”,editText2.getText().toString());
params.put(“name”,editText3.getText().toString());
返回参数;
}
};
//射门
RequestQueue=Volley.newRequestQueue(this);
添加(请求);
但在安卓工作室里,你会看到这样的节目
D/Volley: [1124] BasicNetwork.logSlowRequests: HTTP response for request=<[ ] http://192.168.0.103:3000/api/SampleParticipant 0x85adf657 NORMAL 1> [lifetime=5381], [size=704], [rc=500], [retryCount=1]
E/Volley: [1124] BasicNetwork.performRequest: Unexpected response code 500 for http://192.168.0.103:3000/api/SampleParticipant
D/EGL_emulation: eglMakeCurrent: 0xa3f85420: ver 2 0 (tinfo 0xa3f83350)
D/EGL_emulation: eglMakeCurrent: 0xa3f85420: ver 2 0 (tinfo 0xa3f83350)
D/Volley:[1124]BasicNetwork.logSlowRequests:HTTP请求响应=[lifetime=5381],[size=704],[rc=500],[retryCount=1]
E/截击:[1124]基本网络。性能请求:对的意外响应代码500http://192.168.0.103:3000/api/SampleParticipant
D/EGL_仿真:eglMakeCurrent:0xa3f85420:ver 2 0(tinfo 0xa3f83350)
D/EGL_仿真:eglMakeCurrent:0xa3f85420:ver 2 0(tinfo 0xa3f83350)
这是服务器端的错误,与截击无关
您可以像这样处理500个错误
@Override
public void onResponse(Response<YourModel> response) {
if (response.code() == 200) {
// Do awesome stuff
} else if(response.code() == 500){
Toast.makeText(this, "Error: internal server error", Toast.LENGTH_SHORT).show();
}
}
@覆盖
公共响应(响应){
if(response.code()==200){
//做一些很棒的事情
}else if(response.code()==500){
Toast.makeText(这是“错误:内部服务器错误”,Toast.LENGTH_SHORT.show();
}
}
这是服务器端的错误,与截击无关
您可以像这样处理500个错误
@Override
public void onResponse(Response<YourModel> response) {
if (response.code() == 200) {
// Do awesome stuff
} else if(response.code() == 500){
Toast.makeText(this, "Error: internal server error", Toast.LENGTH_SHORT).show();
}
}
@覆盖
公共响应(响应){
if(response.code()==200){
//做一些很棒的事情
}else if(response.code()==500){
Toast.makeText(这是“错误:内部服务器错误”,Toast.LENGTH_SHORT.show();
}
}
您好,我注意到您发布了一个类似的帖子,这两个问题都已接受答案。如果答案不起作用,就不必接受。如果你有更多的东西要写,你也可以编辑这个问题:)谢谢你的建议。嗨,我注意到你贴了一个类似的帖子,这两个问题都接受了答案。如果答案不起作用,你不必接受,如果你还有更多的东西要写,你也可以编辑这个问题:)谢谢你的建议。谢谢你的回复。但是我不清楚,你能解释一下或者给我一些例子吗,这个类会自动解析响应。您不需要手动解析响应。在您的例子中,响应是字符串,也可以是JSON对象或JSON数组,但如果您创建一个POJO类并使用GSON解析器,那么访问响应将变得很容易。谢谢您的回复。但是我不清楚,你能解释一下或者给我一些例子吗,这个类会自动解析响应。您不需要手动解析响应。在您的例子中,响应是字符串,它也可以是JSON对象或JSON数组,但如果您创建一个POJO类并使用GSON解析器,那么访问响应将变得很容易。