2013-10-14 33 views
5

我已经阅读使用UTF-8字符集
我用这个语法编码JSON文件:

$http.get('resources/negozi.json', 
    {header : {'Content-Type' : 'application/json; charset=UTF-8'} 
}).success(function(data) { 
... code here 
}); 

但是,响应报头:

内容类型:text/plain;字符集= ISO-8859-1

如果我试图用jQuery做到这一点:

$.ajax({ 
type: "GET", 
url: "resources/negozi.json", 
contentType: "application/json; charset=utf-8", 
dataType: "json", 

请求头是正确的。但是,答复是一样的。

Content-Type:text/plain; charset = ISO-8859-1

+0

你使用的是什么服务器? – nubbel

+1

正如@nubbel所说,服务器响应是指示返回的内容 - 请检查您的服务器端代码。 –

+0

服务器端代码是我的。我自己编写一个utf-8编码的json进行测试。不幸的是我不能改变任何东西在服务器上 – Banasci

回答

6

看起来您可能需要设置一个Accept标头。 contentType标题适用于您发送的内容;

Accept: application/json;charset=UTF-8 
Accept-Charset: UTF-8 

so;

$.ajax({ 
    type:"GET", 
    url:"resources/negozi.json", 
    headers: { 
     "Accept": "application/json;charset=utf-8", 
     "Accept-Charset":"charset=utf-8" 
    }, 
    dataType:"json" 
});  
0

如果你正在使用PHP作为服务器端编程语言,你可以尝试设置内部编码为UTF-8 mb_internal_encoding("utf-8")