【发布时间】:2016-01-03 12:44:50
【问题描述】:
我在 Express 中使用 NodeJS,当我在 URL 中使用外来字符时,它们会自动进行编码。
如何将其解码回原始字符串?
在调用 NodeJS 之前,我会转义字符。
所以字符串:אובמה
变成%u05D0%u05D5%u05D1%u05DE%u05D4
整个 URL 现在看起来像:http://localhost:32323/?query=%u05D0%u05D5%u05D1%u05DE%u05D4
现在在我的 NodeJS 中,我得到了转义字符串 %u05D0%u05D5%u05D1%u05DE%u05D4。
这是相关代码:
var url_parts = url.parse(req.url, true);
var params = url_parts.query;
var query = params.query; // '%u05D0%u05D5%u05D1%u05DE%u05D4'
我已经尝试过 url 和 querystring 库,但似乎没有什么适合我的情况。
querystring.unescape(query); // still '%u05D0%u05D5%u05D1%u05DE%u05D4'
【问题讨论】: