0
使用AsyncHttpClient
我通过我的Android设备简单的GET请求,我的服务器发送。我的服务器需要认证。当我传递正确的登录名和密码时,它会显示应该显示的内容。此外,当认证是正确的,但有没有这样的在我的数据库中的值并没有返回404,它显示敬酒。此代码如下所示:AsyncHttpClient onFailure处方法没有显示出来敬酒时的验证是错误
@Override
public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
if (statusCode == 401) {
Toast.makeText(getActivity(), "Wrong authentication", Toast.LENGTH_SHORT).show();
}
else if (statusCode == 404) {
Toast.makeText(getActivity(), "No content", Toast.LENGTH_SHORT).show();
}
else if (statusCode == 500) {
Toast.makeText(getActivity(), "There's something wrong with a server!", Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(getActivity(), throwable.toString(), Toast.LENGTH_SHORT).show();
}
}
正如您所看到的,我还希望在身份验证错误时显示TOAST。但是,当401状态码返回时,TOAST不显示。这是我从android工作室的例外:
W/JsonHttpRH: onFailure(int, Header[], String, Throwable) was not overriden, but callback was received
cz.msebera.android.httpclient.client.HttpResponseException: UNAUTHORIZED
at com.loopj.android.http.AsyncHttpResponseHandler.sendResponseMessage(AsyncHttpResponseHandler.java:446)
at com.loopj.android.http.AsyncHttpRequest.makeRequest(AsyncHttpRequest.java:160)
at com.loopj.android.http.AsyncHttpRequest.makeRequestWithRetries(AsyncHttpRequest.java:177)
at com.loopj.android.http.AsyncHttpRequest.run(AsyncHttpRequest.java:106)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
什么可能会导致此问题?由于
编辑:
这里有日志时,“未找到”的内容,但授权是正确的。不幸的是,下面的日志不会出现。顺便说一句,我的烤不会出现在我的应用程序...
Log.d("Failed: ", "" + statusCode);
Log.d("Error : ", "" + throwable);
这里有日志时,授权是错误的。出现下面的日志。顺便说一句,我的烤也出现在我的应用程序...
Log.d("Failed: ", "" + statusCode);
Log.d("Error : ", "" + throwable);
它甚至没有记录任何..它只是抛出一个例外如上 – pingwin850
我真的不明白它..现在用'super.onFailure(statusCode,headers,responseString,throwable);'它显示“错误的身份验证”..但是,没有显示“没有内容“toast to .. – pingwin850
你可以在这里发布新日志,打印一个日志与状态代码也看到你得到。 – Gaurav