当前位置: 首页 > 面试题库 >

如何在Node.js中获取UTF-8?

谷梁涵忍
2023-03-14
问题内容

如何在我的API上获得UTF-8支持?此刻,一个字符串输出如下:

name: "John D�m"

代替:

name: "John Döm"

在以下结帐app.js:

var express = require('express'),
    driver = require('./driver');

var app = express();

app.configure(function () {
    app.use(express.logger('dev'));
    app.use(express.bodyParser());
});

app.get('/drivers', driver.findAll);

app.listen(3000);
console.log('Up: http://127.0.0.1:3000/');

问题答案:

连接到响应生成器或创建执行以下操作的中间件:

res.header("Content-Type", "application/json; charset=utf-8");

否则,浏览器将以他喜欢的编码显示内容。

如果这不能帮助您,则DB可能编码错误。

编辑: 由于答案将近5年,API已更改。对于当前的node.js版本,请使用:

res.setHeader("Content-Type", "application/json; charset=utf-8");


 类似资料:
  • 问题内容: 我刚刚发现Node(已测试:v0.8.23,当前git:v0.11.3-pre)在其Buffer处理中忽略了任何解码错误,以(Unicode REPLACEMENT CHARACTER)静默替换了任何非utf8字符,而不是抛出异常非utf8输入。因此,,和朋友面膜类大对你坏输入错误的。 不会失败但确实应该的示例: 是合法的utf8中可能出现的完全有效的字符(作为sequence ),因

  • 问题内容: 我想得到 1到24 ,太平洋时间凌晨1点。 如何在Node.JS中获得该号码? 我想知道现在太平洋时间现在几点。 问题答案: 您应该检出Date对象。 特别是,您可以查看Date对象的getHours()方法。 getHours()返回0到23之间的时间,因此请确保相应地进行处理。我认为0-23有点直观,因为军事时间是从0-23开始,但这取决于您。 考虑到这一点,代码将类似于以下内容:

  • 问题内容: 我正在尝试编写一个nodejs服务器,该服务器将花费一个时间输入(可能是url路径的一部分),然后在该时间索引处以jpeg图片的形式提供静止的视频帧。 我可以用普通的Javascript轻松地做到这一点,但是我看不到在nodejs中做到这一点的方法。我知道我可能需要使用像node- canvas这样的画布插件来做快照。 任何想法欢迎。 以下是我目前在Javascript中的处理方式:

  • 问题内容: 我正在使用带有Node.js的Redis数据库。使用 我存储JSON字符串化作业。 现在,我要遍历所有作业,并同时检索作业ID和字符串化的作业。 我试过了, 但是只检索了键。 我试过了, 但我不知道如何从obj检索键和值。 任何帮助都将不胜感激,因为我被困住了。 问题答案: 这就是它的工作方式。以下代码中的id是记录ID。

  • 问题内容: 我不是指 127.0.0.1 而是其他计算机将用来访问该计算机的计算机,例如 192.168.1.6 问题答案: http://nodejs.org/api/os.html#os_os_networkinterfaces

  • 问题内容: 我正在尝试让我的函数返回http get请求,但是,无论如何,它似乎在?scope中丢失了。我对Node.js不熟悉,因此不胜感激 问题答案: 当然,您的日志会返回:您在完成请求之前先进行日志。问题不是范围,而是 异步性 。 是异步的,这就是为什么它将回调作为参数的原因。做您在回调中要做的事情(传递给的):