Node.js nodejs:如何从解码的url查询字符串中获取原始值
如果url包含非英语字符,则以百分比解码格式进行编码 像这样Node.js nodejs:如何从解码的url查询字符串中获取原始值,node.js,unicode,Node.js,Unicode,如果url包含非英语字符,则以百分比解码格式进行编码 像这样 %D8%A7%D9%84%D8%B3%D9%8A%D8%AF%20Ahmed 在nodejs程序中,我需要将这个值解码为它的原始值 我试过: var qs = require('querystring'); console.log(qs.unescape('%D8%A7%D9%84%D8%B3%D9%8A%D8%AF%20Ahmed')); 还有这个 console.log(swapBytes(new Buffer(%D8%A7%
%D8%A7%D9%84%D8%B3%D9%8A%D8%AF%20Ahmed
在nodejs程序中,我需要将这个值解码为它的原始值
我试过:
var qs = require('querystring');
console.log(qs.unescape('%D8%A7%D9%84%D8%B3%D9%8A%D8%AF%20Ahmed'));
还有这个
console.log(swapBytes(new Buffer(%D8%A7%D9%84%D8%B3%D9%8A%D8%AF%20Ahmed,'hex')).toString('utf8'));
两者都给了我错误的值:
原始值为:
艾哈迈德
这对我来说很有用:
var buf = new Buffer('d8a7d984d8b3d98ad8af2041686d6564', 'hex');
console.log(buf.toString('utf8'));
它在终端的右侧显示所需的名称。您可以确保您的LANG
环境变量在国家/语言之后有.UTF-8
(例如en_US.UTF-8
)。如果您使用PuTTY之类的工具来测试控制台中的输出,请确保更改窗口中的远程字符集
选项
->翻译
,以便在下拉列表中连接到UTF-8
,然后单击应用。实际上,我发现所有方法都在工作。。。问题出现在输出控制台中,而不是值中。。。我用的是崇高的文字。。。