你能从Javascript发出HTTP PATCH请求吗?

NSA*_*NSA 12 javascript http

我正在使用一个API,要求我作为URI的一部分发出HTTP PATCH请求,这可以通过Javascript来做,我的研究显示我只能执行POST,GET,DELETE和PUT.是否允许PATCH?

谢谢,

Lek*_*eyn 5

我不确定“PATCH”请求的确切含义,但它似乎是可能的(至少在 Firefox 6 和 Chromium 12 中)。根据Mozilla 源代码,只有TRACETRACKrequests的限制。

一个快速的测试用例:

<!-- test.html -->
<script>
var x=new XMLHttpRequest();
x.open("patch", "/");
x.send(null);
</script>
Run Code Online (Sandbox Code Playgroud)

可以使用任何网络服务器,但我选择 Python 的 SimpleHTTPServer 模块。

$ ls
test.html
$ python -m SimpleHTTPServer
localhost - - [21/Sep/2011 17:32:11] "GET /test.html HTTP/1.1" 200 -
localhost - - [21/Sep/2011 17:32:11] code 501, message Unsupported method ('patch')
localhost - - [21/Sep/2011 17:32:11] "patch / HTTP/1.1" 501 -
Run Code Online (Sandbox Code Playgroud)

因此,只要服务器支持该方法,请求 get 就会通过。