NodeJS

2013-04-06 32 views
7

'da URL kodunun (php) en iyi yolu Daha önce Node'de php ile kodlanmış bir dizginin kodunu çözmeyi deniyorum. - bazı Düğüm yükseltme ya da ne olduğundan emin olmadığımız takdirde NodeJS

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

O zaman sadece çalışmayı durdurdu: Yaklaşık bir ay önce ben çalışmak vardı. Etrafında oynadıktan sonra sadece 'unescape()' kullanabilirim ama henüz sağlam olmasaydı emin değilim.

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

Sorum en iyi yoldur ve başkasının bu sorunu fark vardır budur. İlk satırın basit dizelerle çalıştığını, ancak garip karakterlerle parçalandığını unutmayın - bu yüzden göremediğim bazı kodlama sorunları. .

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

Şimdi http://www.tareeinternet.com/scripts/unescape.html gidin ve deşifre:

İşte bir dize var. Bu benim orijinalim (bu bir RC4 şifreli dizedir). Node'un bu dizeyi döndürmesini istiyorum.

+0

yardımcı olur; 'querystring.unescape() 'sadece kodlanmış UTF-8 dizeleriyle değil, ham bayt dizeleriyle ilgilenir. – robertklep

cevap

29

Yalnızca Node.js içinde yerleşik olan unescape işlevini kullanırsanız, sonucunuz istediğiniz gibi olmalıdır.

node.js 0.10.1 kullanma ve interaktif kabuk üzerinde

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

çalışan, sana olsun istiyorum ne gibi hemen hemen görünüyor sonucunda

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

olsun.

Umut bu O çıkış yapılmış (str) `sadece söz sayfası gibi bunu deşifre` görünüyor :-)

+0

Evet, yukarıda sahip olduğum şey budur - değiştirme bitini tek bir noktaya eklemeniz gerekir, sonunda uzun dizeleri koparır - Denedim. Ben sadece querstring.unescape'in neden birdenbire çalışmayı bıraktığını merak ediyorum – cyberwombat