conn = (HttpURLConnection) connectURL.openConnection();
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setUseCaches(false);
conn.setRequestMethod("POST");
conn.connect();
int code = conn.getResponseCode();我已成功建立连接。我正在尝试通过internet.When传递信息,url是通过浏览器打开的,我收到的响应如下
{"status":"0","responseCode":"1001","response":"Wrong Settings."}对于正确的状态,返回为1。
是否有任何方法可以仅获取状态。我尝试过以下方法,但每次通过浏览器手动验证时,我都会获得与状态代码无关的代码(下面是代码片段
发布于 2012-07-25 17:15:46
这是一个JSON文本。您将需要使用JSON库。
发布于 2012-07-25 17:20:55
int code = conn.getResponseCode();此方法返回http状态代码。有关http状态代码,请参见
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
而您要检索的响应代码实际上是服务器返回的响应字符串。要阅读本文,请使用以下命令:
try {
InputStream in = new BufferedInputStream(conn.getInputStream());
readStream(in);//method to read characters from stream.
finally {
urlConnection.disconnect();
}
}发布于 2012-07-25 17:28:17
您可以为从您的连接获取响应字符串添加以下代码。
OutputStream connectionOutput = null;
connectionOutput=connection.getOutputStream();
connectionOutput.write(requestJson.toString().getBytes());
connectionOutput.flush();
connectionOutput.close();
inputStream = new BufferedInputStream(connection.getInputStream());
ByteArrayOutputStream dataCache = new ByteArrayOutputStream();
// Fully read data
byte[] buff = new byte[1024];
int len;
while ((len = inputStream.read(buff)) >= 0) {
dataCache.write(buff, 0, len);
}
// Close streams
dataCache.close();现在获取json的响应字符串,如下所示。
String jsonString = new String(dataCache.toByteArray()).trim();
JSONObject mJsonobject=new JSONObject(jsonString);现在可以从这个mJsonobject对象中解析密钥了。
https://stackoverflow.com/questions/11646344
复制相似问题