首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery请求强制错误编码。

jquery请求强制错误编码。
EN

Stack Overflow用户
提问于 2014-08-22 13:33:36
回答 2查看 2.1K关注 0票数 0

如果向我的url创建ajax请求,我将得到以下内容类型(特殊字符问题):

代码语言:javascript
运行
复制
application/json

但是,如果我在浏览器中直接打开url,就会得到(特殊字符显示得很好):

代码语言:javascript
运行
复制
application/json;charset=utf-8

最后一个是由服务器发送的。

我的网站名为ajax请求,标题中有以下元标记:

代码语言:javascript
运行
复制
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

ajax-请求:

代码语言:javascript
运行
复制
$.ajax({
    url: 'MY-URL-AS-USED-HERE-AND-IN-THE-BROWSER',
    type: 'GET',
    contentType : 'application/json; charset=UTF-8',
    dataType : 'json',
    async: false,
    success: function(r) {
        console.log(r);
    }
});

编辑:

负载功能似乎起作用了。但是我想使用ajax:

代码语言:javascript
运行
复制
$('body').append('<div id="test"></div>');
$('#test').load('MY-URL-AS-USED-HERE-AND-IN-THE-BROWSER');

加载函数的内容类型与浏览器请求的内容类型相同:

代码语言:javascript
运行
复制
application/json;charset=utf-8
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-22 15:49:06

代码语言:javascript
运行
复制
dataType : 'json'

引发了utf-8问题。我从.ajax中删除了它,一切都很好。:)

票数 0
EN

Stack Overflow用户

发布于 2014-08-22 14:56:57

我已经有了这个问题,我的解决方案正在改变我的响应(服务器端)。我开始发送具有UTF-8缓冲区的数据:

代码语言:javascript
运行
复制
response.end(new Buffer(JSON.stringify(result.rows), 'UTF-8'));

我在后端使用nodeJS。到目前为止对我有用..。我没有费心去找客户端的解决方案。

希望能帮上忙。如果有人知道为什么会这样,也想知道。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25448313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档