首页 > 解决方案 > 如何在您自己的 API 上执行非 GET 请求

问题描述

我按照指南创建了自己的 REST API。我正在尝试使用根据指南构建的 API,但是在使用任何不是请求的GET请求时遇到了一些麻烦。当我尝试执行删除请求时。( http://localhost:8080/api/v1/employees/3)

我会得到一个405 error,但我不确定为什么(我的本地主机中没有任何密码保护)。我想了解如何创建除GET. 我尝试对我的POST请求使用查询参数,但没有成功。

我查看了所有其他 StackOverFlow 类似问题,但找不到任何东西。

EDIT1:我正在使用一个简单的 Java 应用程序来执行此操作。

这是我用来完成我的GET请求的代码

String urlString = "http://localhost:8080/api/v1/employees";
try {
  String result = "";
  URL url = new URL(urlString);
  URLConnection conn = url.openConnection();
  BufferedReader rd = new BufferedReader (new InputStreamReader(conn.getInputStream()));
  String line;
  while ((line = rd.readLine()) != null) {
    result += line;
  }
  rd.close();
  System.out.println(result);
}

标签: javarestcrud

解决方案


尝试替换这个URLConnection conn = url.openConnection();

对此:

HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");

推荐阅读