当我试图使用decodeurcomponent在nodejs中解码以下字符串时:

var decoded = decodeURI('Ulysses%20Guimar%C3%A3es%20-%20lado%20par');
console.log(decoded);

我得到了
Ulysses Guimarães - lado par

而不是
Avenida Ulysses Guimarães - lado par

但是,当我在客户端(浏览器)使用相同的代码时,我可以得到正确的字符“_”。
有没有办法在节点脚本中从_转换为_?

最佳答案

我不能在node的0.10或0.11版本中复制它。
您可以使用new Buffer('Ulysses Guimarães - lado par', 'binary').toString('utf8')将第一个转换为第二个,但这是一种解决方法,而不是解决方案。
你确定你在调用decodeuri,而不是unescape?

07-24 17:00