代码:
var nerve = require("./nerve");
var sitemap = [
["/", function(req, res) {
res.respond("Русский");
}]
];
nerve.create(sitemap).listen(8100);
在浏览器中显示:
CAA:89
它应该如何正确?
答案 0 :(得分:5)
神经appears将您传递的字符串解释为二进制字符串,从而产生您所看到的输出。您可以使用Buffer类手动将UTF-8字符转换为二进制字符串。您还需要在标题中设置字符集:
var sitemap = [
["/", function (req, res) {
res.respond({
headers: {"Content-Type": "text/html; charset=utf-8"},
content: new Buffer("Русский", "utf8").toString("binary")
});
}]
];
如果你想尝试另一个框架,Express可以更好地处理UTF-8。它将字符串解释为UTF-8并默认设置正确的字符集:
var app = require("express").createServer();
app.get("/", function (req, res) {
res.send("Русский");
});
app.listen(8100);