jQuery .ajax PUT请求不尊重自定义标头

时间:2012-12-04 04:00:19

标签: javascript jquery http-headers

使用带有.ajax的PUT类型时,我丢失了自定义标头。但是,GET标题很好,但是PUT会受到损坏。请参阅证据1:

// GOOD GET:

$.ajax({
    url: url,
    type: 'GET',
    dataType: 'json',
    headers: {
        Accept: "application/json"
    }
});

// Actual header sent (using fiddler):
Accept: application/json

// BAD PUT:

$.ajax({
    url: url,
    type: 'PUT',
    dataType: 'json',
    headers: {
        Accept: "application/json"
    }
});

// Actual header sent (using fiddler):
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

正如您所看到的,唯一的区别是类型的值导致标题的Accept部分的值被删除。 jQuery的1.8.2.js。有什么想法吗?感谢

Stabby

1 个答案:

答案 0 :(得分:1)

似乎与浏览器有关:

http://jsfiddle.net/oceog/WqXzA/

Request URL:http://fiddle.jshell.net/_display/
Request Method:PUT
Status Code:200 OK
Request Headersview source
Accept:application/json

Chrome 25.0