当前位置: 首页 > 知识库问答 >
问题:

使用Java的HttpUrlConnection修补程序请求

马俊
2023-03-14

我正在尝试进行http补丁请求,但我总是得到404错误,所以可能是我的连接设置不正确:

        URL url = new URL("MyPath");
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setDoOutput(true);
        conn.setRequestProperty("X-HTTP-Method-Override", "PATCH");
        conn.setRequestProperty("Content-Type", "application/json");
        conn.setRequestProperty("Accept", "application/json");
        conn.setRequestMethod("POST");

        JsonObject jo = createMyJson();
        OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream());
        out.write(jo.toString());
        out.close();

        System.out.println(conn.getResponseCode());
        System.out.println(conn.getResponseMessage());

我收到404错误,未找到。当使用Postman执行相同的请求时,这是有效的…谢谢你的帮助。

共有1个答案

卜泓
2023-03-14

并非所有服务器都支持X-HTTP-Method-Override。在这种情况下,您的最后手段是(如果您没有使用合适的HTTP客户端)破解URLConnection对象。

我在这里发布了一个完整的解决方案,请查看。

 类似资料:
  • 当我尝试使用非标准的HTTP方法时,比如带有URLConnection的补丁: 我有个例外: 使用更高级别的API(如Jersey)会产生相同的错误。是否有解决办法来发出修补程序HTTP请求?

  • 我对PersondTo有以下定义: 下面是一个示例记录: 现在,无名氏离婚了。所以我需要向这个URL发送补丁请求: 我想不出该怎么做。以下是我到目前为止所做的尝试: 以下是上面的问题: 1)由于我只设置了MaritalStatus,其他字段都将为null。因此,如果我打印出请求,它将如下所示: 请欣赏那些编写客户机应用程序的人提出的使用Spring的RESTTemplate使用Restful we

  • 我有一个带有spring框架的Java8应用程序。我们需要从应用程序中使用REST调用补丁操作。 代码片段如下: 请指教。

  • 我试图使用HttpURLConnection执行post请求,但不知道如何正确执行。 我可以使用以下代码成功地使用Android AsyncHttp客户端执行请求: 可以在台式机上使用curl执行相同的请求: 这两种方法都给了我来自服务器的预期响应。 现在我想使用HttpURLConntions执行相同的请求。问题是我不知道如何正确地执行它。我尝试过这样的事情: 如何正确地将与使用AsyncHtt

  • 有很多类似“REST vs SMTH”的比较(例如vs Kafka,vs JSON-RPC),但我也看到了JSON-RPC和JSON补丁之间的许多相似之处--它们都指定了操作/方法、值/参数,并允许执行批处理请求。我看到的唯一区别是,JSON-RPC还用ID和错误描述响应格式,因此看起来更加成熟。但也许它们只是有不同的优点和缺点,不同的合适用例?

  • 在我的API控制器类中有方法如下, 如下所示, 我从postman调用了API,并返回了它的请求。 我在Controller方法中放置了断点,但它没有命中。在我从方法参数breakpoin hit中删除了之后,没有返回。当我使用时,为什么它返回400?我如何从HTTP客户端调用这个控制器方法?。 我试过这个,它也会返回400个请求 我该怎么解决这个问题?请帮帮我。我删除了前面的问题,这才是我真正的