【发布时间】:2012-07-20 14:11:42
【问题描述】:
我正在制作一个 android 应用程序,它将使用 xauth 身份验证连接到 Web 服务器。我的问题是如果服务器返回 401 导致 java 异常,我无法得到响应。
我需要那个回复才能知道我做错了什么。
首先,HttpURLConnection 适合这种东西吗 其次,我怎样才能得到响应?
URL u_rl = new URL(url);
final HttpURLConnection connection =
(HttpURLConnection) u_rl.openConnection();
connection.setRequestMethod(method);
if (authorization != null) {
connection.setRequestProperty("Authorization", authorization);
}
final byte[] body = parameters.getBytes();
connection.setRequestProperty(
"Content-Length", Integer.toString(body.length));
connection.setDoOutput(true);
connection.connect();
final OutputStream output = connection.getOutputStream();
output.write(body);
output.flush();
System.out.println(connection.getResponseCode());
if (connection.getResponseCode() != 200) {
result.put("error", connection.getResponseCode()+"");
return null;
}
String out = IOUtils.toString(connection.getInputStream());
我知道为什么我得到 400 或其他响应代码,问题是用户不知道为什么。服务器返回 JSON 错误,即使响应代码不是 200,我也想获取该 JSON 代码
【问题讨论】:
-
你必须发布一些代码?
-
如果我的以下回答对您有帮助,请接受我的回答并投票给我,我们将不胜感激。谢谢:)
-
已发布代码,但我认为它与我的问题没有任何共同点?
标签: java android httpurlconnection