【发布时间】:2015-04-24 18:00:53
【问题描述】:
我用套接字发送了一条 GET 消息。但不幸的是,GET 响应不是200 OK 的状态。回复是400 Bad request 或302 Found 等。我该如何解决这个问题?你能帮助我吗 ?
String requestmsg = "GET / HTTP/1.1\r\n";
requestmsg += "User-Agent: MYCUSTOMAGENT\r\n";
requestmsg += "Accept-Language: en-us\r\n";
requestmsg += "Accept-Encoding: gzip, deflate\r\n";
requestmsg += "Connection: Keep-Alive\r\n";
requestmsg += "Connection: close\r\n";
requestmsg += "\r\n";
DataOutputStream dos = null;
BufferedReader dis = null;
try {
Log.d("ClientActivity", "Connecting...");
String addr = InetAddress.getByName("www.facebook.com").getHostAddress().toString();
Socket socket = new Socket(addr, 80);
String data = "";
try {
Log.d("ClientActivity", "C: Sending command.");
dos = new DataOutputStream(socket.getOutputStream());
dis = new BufferedReader(new InputStreamReader(socket.getInputStream()));
dos.write(requestmsg.getBytes());
Log.i("ClientActivity", "RequestMsg Sent");
StringBuilder sb = new StringBuilder();
while ((data = dis.readLine()) != null) {
sb.append(data);
}
Log.i("ClientActivity", "C: Received " + sb.toString());
} catch (Exception e) {
Log.e("ClientActivity", "S: Error", e);
}
socket.close();
Log.d("ClientActivity", "C: Closed.");
} catch (Exception e) {
Log.e("ClientActivity", "C: Error", e);
}
【问题讨论】:
-
requestmsg += "text/xml; charset=utf-8\r\n";行不是有效的标题行。除非您在发布问题时犯了复制错误? -
我已编辑。谢谢。你对这个问题有什么想法吗?
标签: java android http get response