我使用给定的代码在 java 中使用 GET REST 调用,但收到错误代码: 404 即 Not Found 。但是当我在浏览器中使用相同的 URL 时,我得到了输出并且工作正常。我是 JAVA 新手。
可能是我错误地传递了查询参数,但我没有得到它。
我正在 NETBEANS 7.1.2 中工作。请帮忙。
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
public class Test {
private static String ENDPOINT ="http://wisekar.iitd.ernet.in/active/api_resources.php/method/mynode?";
public static void main(String[] args) throws IOException
{
URL url = new URL(ENDPOINT + "key=" + "mykey" );
HttpURLConnection httpCon = (HttpURLConnection) url.openConnection();
httpCon.setDoOutput(true);
httpCon.setRequestMethod("GET");
OutputStreamWriter out = new OutputStreamWriter( httpCon.getOutputStream());
System.out.println(httpCon.getResponseCode());
System.out.println(httpCon.getResponseMessage());
out.close();
}
}
这里mykey是网站给我的密钥。
我还想在输出窗口或控制台上打印响应消息。因为我想将其存储在将来以供提取。
请帮忙。
这是你的代码..使用它。它给出的响应为401-Unauthorised
对我来说,浏览器 URL 的响应相同,这可能会导致 VPN 出现其他问题。如果你使用
private static String ENDPOINT ="http://google.com";
它会给你200-OK
.
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
public class Test {
private static String ENDPOINT ="http://wisekar.iitd.ernet.in/active/api_resources.php/method/mynode";
public static void main(String[] args) throws IOException
{
String url = ENDPOINT;
String charset = "UTF-8";
String param1 = "mykey";
String query = String.format("key=%s",
URLEncoder.encode(param1, charset));
java.net.URLConnection connection = new URL(url + "?" + query).openConnection();
connection.setRequestProperty("Accept-Charset", charset);
if ( connection instanceof HttpURLConnection)
{
HttpURLConnection httpConnection = (HttpURLConnection) connection;
System.out.println(httpConnection.getResponseCode());
System.out.println(httpConnection.getResponseMessage());
}
else
{
System.err.println ("error!");
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)