我正在尝试执行http PATCH请求,但我总是收到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执行相同的请求时,这是有效的.. 谢谢你的帮助。
答案 0 :(得分:0)
并非所有服务器都支持X-HTTP-Method-Override
。在这种情况下,您的最后一招(如果您没有使用体面的HTTP客户端)来破解URLConnection
对象。
我发布了一个完整的解决方案here on SO,请查看。