Domanda

codice:

var nerve = require("./nerve");
var sitemap = [
    ["/", function(req, res) {
        res.respond("Русский");
    }]
];
nerve.create(sitemap).listen(8100);

show in del browser:

CAA:89  

Come dovrebbe essere corretto?

È stato utile?

Soluzione

per interpretare le stringhe si passa come stringhe binarie, che provoca l'uscita che stai vedendo. È possibile utilizzare la classe Buffer per convertire i caratteri UTF-8 caratteri da una stringa binaria manualmente. È inoltre necessario impostare il set di caratteri nelle intestazioni:

var sitemap = [
  ["/", function (req, res) {
    res.respond({
      headers: {"Content-Type": "text/html; charset=utf-8"},
      content: new Buffer("Русский", "utf8").toString("binary")
    });
  }]
];

Se volete provare un altro quadro, espresso fa una migliore gestione UTF-8 lavoro. Interpreta le stringhe come UTF-8 e imposta il set di caratteri in modo corretto per impostazione predefinita:

var app = require("express").createServer();

app.get("/", function (req, res) {
  res.send("Русский");
});

app.listen(8100);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top