Java REST API 客户端
Java REST API CLient
我有 java 客户端点击我创建的 API 但是当我 运行 基本上是 java 客户端的 class 然后它抛出例外。
这里是例外。
Exception in thread "main" java.lang.RuntimeException: Failed : HTTP error code : 405
at TST.main(TST.java:29)
代码如下:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class TST {
// http://localhost:8080/RESTfulExample/json/product/post
public static void main(String[] args) {
try {
URL url = new URL("http://localhost:8080/JAXRS-FileUpload/rest/files/upload");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "text/plain");
String input = "/home/hassan/Downloads/56963a249bff5_4__67_green-lantern_issue70.png";
OutputStream os = conn.getOutputStream();
os.write(input.getBytes());
os.flush();
if (conn.getResponseCode() != HttpURLConnection.HTTP_CREATED) {
throw new RuntimeException("Failed : HTTP error code : "
+ conn.getResponseCode());
}
BufferedReader br = new BufferedReader(new InputStreamReader(
(conn.getInputStream())));
String output;
System.out.println("Output from Server .... \n");
while ((output = br.readLine()) != null) {
System.out.println(output);
}
conn.disconnect();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
我正在本地主机上测试它我也尝试用我的 IP 地址代替 localhost 但它不起作用它也抛出相同的异常。
URL url = 新 URL("http://192.168.1.3:8080/JAXRS-FileUpload/rest/files/upload");
提前致谢。
您尝试访问的资源不存在,或者不允许POST
。您可以尝试使用 GET
来查看它是否存在。如果没有,应该return一个404
.
405
return 代码表示 "Method not allowed",在某些情况下当资源完全丢失时可以看到。 404
表示 "Not Found".
我有 java 客户端点击我创建的 API 但是当我 运行 基本上是 java 客户端的 class 然后它抛出例外。 这里是例外。
Exception in thread "main" java.lang.RuntimeException: Failed : HTTP error code : 405
at TST.main(TST.java:29)
代码如下:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class TST {
// http://localhost:8080/RESTfulExample/json/product/post
public static void main(String[] args) {
try {
URL url = new URL("http://localhost:8080/JAXRS-FileUpload/rest/files/upload");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "text/plain");
String input = "/home/hassan/Downloads/56963a249bff5_4__67_green-lantern_issue70.png";
OutputStream os = conn.getOutputStream();
os.write(input.getBytes());
os.flush();
if (conn.getResponseCode() != HttpURLConnection.HTTP_CREATED) {
throw new RuntimeException("Failed : HTTP error code : "
+ conn.getResponseCode());
}
BufferedReader br = new BufferedReader(new InputStreamReader(
(conn.getInputStream())));
String output;
System.out.println("Output from Server .... \n");
while ((output = br.readLine()) != null) {
System.out.println(output);
}
conn.disconnect();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
我正在本地主机上测试它我也尝试用我的 IP 地址代替 localhost 但它不起作用它也抛出相同的异常。
URL url = 新 URL("http://192.168.1.3:8080/JAXRS-FileUpload/rest/files/upload");
提前致谢。
您尝试访问的资源不存在,或者不允许POST
。您可以尝试使用 GET
来查看它是否存在。如果没有,应该return一个404
.
405
return 代码表示 "Method not allowed",在某些情况下当资源完全丢失时可以看到。 404
表示 "Not Found".