我正在使用jQuery ajax通過HTTP POST調用我的WCF服務。響應是GZIP編碼的,這會在我的環境中造成問題。 (見this question)。如果響應不是GZIP編碼,一切都很好。ajax post - 我想更改Accept-Encoding標頭值
所以在尋找提琴手,我看到了jQuery生成的查詢有以下標題:
Accept-Encoding: gzip,deflate,sdch
如果通過小提琴手,我將此值更改爲None
,那麼響應不壓縮,這是什麼我想要。我需要做的就是更改「Accept-Encoding」標題中的值。
看起來不可能通過.ajax
命令更改此標題值。 (見this forum post)。
任何人都可以告訴我什麼選項,我必須改變這個頭值。
這是我目前的嘗試。我的headers
參數似乎被忽略。
$telerik.$.ajaxSetup({
accepts: 'application/json, text/javascript, */*'
});
var parameters = {
"playerId": args.playerId
};
var dataInJsonFormat = '{ "playerId": ' + args.playerId + '}';
var ajaxCallParameters = {
accepts: 'application/json, text/javascript, */*',
async: true,
cache: false,
contentType: "application/json; charset=utf-8",
url: "../Services/CmsWebService.svc/SendUpdateRequestToPlayer",
headers: { "Accept-Encoding" : "None" },
type: "POST",
data: dataInJsonFormat,
dataType: 'json',
error: function (jqXHR, textStatus, errorThrown) {
var errorString = 'Error thrown from ajax call: ' + textStatus + 'Error: ' + errorThrown;
var displayPanel = document.getElementById('requestStatusUpdateResults');
$telerik.$(displayPanel).text(errorString);
},
success: function (data, textStatus, jqXHR) {
var displayPanel = document.getElementById('requestStatusUpdateResults');
$telerik.$(displayPanel).text(data.d);
}
};
$telerik.$.ajax(ajaxCallParameters);
這是否回答幫助:http://stackoverflow.com/questions/5771878/jquery -ajax-request-change-user-agent – sberry