2010-06-16 2 views
0

Я использую jQuery для отправки ajax-запросов на сервер, но у меня есть некоторые проблемы с кодировкой. В документации ajax записано, что данные всегда отправляются в UTF-8 в соответствии со стандартом W3C XMLHTTPRequest, поэтому я не думаю, что jQuery позволяет вам изменять кодировку запроса (за исключением случаев, когда вы загружаете скрипт, но это не мое дело).jQuery set ISO charset to ajax request

Знаете ли вы, как установить кодировку ISO-8859-1 для запроса ajax в jQuery?

ответ

1

Я думаю, это невозможно. Вы можете попытаться переопределить заголовок запроса Content-Type в своем вызове ajax. Я попытался это с:

$.ajax({ 
    url: '/exec/seoportservice.pl', 
    type: 'POST', 
    data: { 
    foo: "bar" 
    }, 
    dataType: 'text', 
    beforeSend: function(xhr){ 
    xhr.setRequestHeader('Content-Type', 'test'); 
    }, 
    success: function(data){ 
    console.log('success: ' + data); 
    }, 
}); 

это фактически перекрывает заголовок Content-Type, но все еще charset=UTF-8 установлен.

Так что, я думаю, вам придется обрабатывать сервер Encoding.