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

时间:2011-09-21 15:16:43

标签: javascript http

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

谢谢,

2 个答案:

答案 0 :(得分:3)

我不确定你的“PATCH”请求究竟是什么意思,但它似乎是可能的(至少在Firefox 6和Chromium 12中)。根据{{​​3}},TRACETRACK请求只有一个限制。

快速测试用例:

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

可以使用任何网络服务器,但我选择使用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 -

因此,只要服务器支持该方法,就会传递请求。

答案 1 :(得分:-4)

在某些研究中,PATCH方法似乎是新的(2010年3月http://tools.ietf.org/html/rfc5789),因此如果您尝试在XMLHttpRequest上定义PATCH它可能会起作用,但仅限于最新的现代浏览器的修订版。尚未找到支持的浏览器列表。