Java Senig HTTP请求不';Don’别把我带到;服务“;我的servlet中的函数
我正在尝试做一个简单的servlet连接套接字, 当使用web浏览器时,我能够看到此网页并能够访问我的servlet(在另一个eclipse实例上)断点。 但当我尝试执行以下功能时:Java Senig HTTP请求不';Don’别把我带到;服务“;我的servlet中的函数,java,sockets,servlets,Java,Sockets,Servlets,我正在尝试做一个简单的servlet连接套接字, 当使用web浏览器时,我能够看到此网页并能够访问我的servlet(在另一个eclipse实例上)断点。 但当我尝试执行以下功能时: public void Connect() { try { String params = URLEncoder.encode("ID", "UTF-8") + "=" + URLEncoder.encode("test", "UTF-
public void Connect() {
try {
String params = URLEncoder.encode("ID", "UTF-8")
+ "=" + URLEncoder.encode("test", "UTF-8");
params += "&" + URLEncoder.encode("GOAL", "UTF-8")
+ "=" + URLEncoder.encode("Security", "UTF-8");
URL url = new URL(_address);
String host = url.getHost();
int port = url.getPort();
String path = url.getPath();
Socket socket = new Socket(host, port);
// Send headers
BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF8"));
wr.write("GET " + path + " HTTP/1.0\r\n");
wr.write("Content-Length: " + params.length() + "\r\n");
wr.write("Content-Type: application/x-www-form-urlencoded\r\n");
wr.write("\r\n");
// Send parameters
wr.write(params);
wr.flush();
// Get response
BufferedReader rd = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String line;
String answer = "";
while ((line = rd.readLine()) != null) {
answer += line;
}
wr.close();
rd.close();
if (answer.indexOf(resourceStrings.ACCESS_GRANTED) != -1)
{
_result = true;
}
}
catch (Exception e) {
_result = false;
}
}
我刚刚得到以下答案:
HTTP/1.1 302 Found
Server: Apache-Coyote/1.1
Location: http://localhost:8180/Admin/
Date: Mon, 18 Apr 2016 15:00:28 GMT
Connection: close
无需访问servlet代码的断点或从servlet中的“服务”函数检索任何数据
我使用的是Tomcat 7,如果有什么不同的话,你知道是什么导致了这个问题吗?GET请求的参数是通过将它们附加到URL而不是请求正文中来发送的 当我使用POST时,同样的事情也发生在我身上,所以我不确定这是否是问题所在