Java http GET请求不适用于本地主机
我正在使用以下代码转发GET请求:Java http GET请求不适用于本地主机,java,rest,get,request,Java,Rest,Get,Request,我正在使用以下代码转发GET请求: public String getHTML(String urlToRead) { URL url; HttpURLConnection conn; BufferedReader rd; String line; String result = ""; try { url = new URL(urlToRead);
public String getHTML(String urlToRead) {
URL url;
HttpURLConnection conn;
BufferedReader rd;
String line;
String result = "";
try {
url = new URL(urlToRead);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
while ((line = rd.readLine()) != null) {
result += line;
}
rd.close();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
但这句话:
getHTML("http://localhost:8080/myapp/serv/create");
导致此错误的原因:
java.lang.IllegalStateException: Target host must not be null, or set in parameters.
我想这是因为我使用了localhost这个词?所以URL无法正确解析?我需要此代码在多台不同的机器上工作,因此无法使用我的IP,因为每台机器都有唯一的IP。是否有另一种方法可以解决此问题哪一行出现此异常?对我来说很好。也许您的服务器中没有/myapp/serv/create上的doGET。@barak manos Eclipse没有编译当前代码。我不知道;我不知道为什么。清理和构建修复了该问题。我是如何发现的:当我试图设置断点时,调试视图中的变量与方法/类中定义的变量不匹配。谢谢你的评论不客气:。。。日食有时确实有这种倾向。。。