在jQuery中使用X-HTTP-Method-Override?

时间:2009-11-28 17:32:28

标签: jquery http-headers put

如何在jQuery中为ajax请求执行X-HTTP-Method-Override?

2 个答案:

答案 0 :(得分:26)

您可以使用beforeSend回调执行ajax请求时设置自定义标头:

$.ajax({
    beforeSend: function(xhr) {
        xhr.setRequestHeader('X-HTTP-Method-Override', 'PUT');
    },
    type: 'POST',
    url: '/someurl',
    success: function(data){
        // do something...
    }
});

答案 1 :(得分:26)

使用1.5,您现在可以传入标题选项:

$.ajax({
  headers: {
    'X-HTTP-Method-Override': 'DELETE'
  },
  method: 'GET'
  // more parameters...
});

这是在调用'beforeSend'之前设置的,因此它仍然可能被覆盖。见http://api.jquery.com/jQuery.ajax/

- 修正了错误的语法(不会让我保存少于6个字符编辑,所以写这条消息