在NodeJS中使用urldecode(php)的最佳方式

所以我试图解码一个string,以前urlencoded与节点中的PHP。 大约一个月前,我曾与:

querystring.unescape(str.replace(/\+/g, '%20')); 

然后它就停止了工作 – 不知道是否是一些节点升级或什么。 玩过后,似乎我可以使用'unescape()',但我不确定它是否是万无一失的。

 unescape(str.replace(/\+/g, '%20')); 

我的问题是什么是最好的方法,并有其他人注意到这个问题。 请注意,第一行使用简单的string,但打破了奇怪的字符 – 所以也许一些编码问题,我没有看到。

这是一个string:

%E6%82%CCI-T%8C%01 + A

现在去http://www.tareeinternet.com/scripts/unescape.html解码。 这是我的原始(这是一个RC4encryptionstring)。 我希望节点返回该string。

Solutions Collecting From Web of "在NodeJS中使用urldecode(php)的最佳方式"

如果你只是使用内build在Node.js中的unescape函数,你的结果应该是你想要的。

使用Node.js 0.10.1并运行

 unescape('%E6.%82%CCI-T%8C%01+A'); 

在交互式shell中,我得到了

 'æ.ÌI-T\u0001+A' 

结果看起来非常像你想得到的。

希望这可以帮助 :-)