Quindi sto provando a decodificare una stringa precedentemente codificata in url con php nel nodo. Circa un mese fa ho avuto a lavorare con:Il modo migliore per urldecode (php) in NodeJS
querystring.unescape(str.replace(/\+/g, '%20'));
poi appena smesso di funzionare - non so se si trattasse di qualche aggiornamento Nodo o cosa. Dopo aver giocato intorno sembra che io possa semplicemente usare 'unescape()' ma non sono sicuro che sia ancora infallibile.
unescape(str.replace(/\+/g, '%20'));
La mia domanda è qual è il modo migliore e qualcun altro ha notato questo problema. Si noti che la prima riga funziona con stringhe semplici ma si scompone con caratteri dispari - quindi forse qualche problema di codifica che non vedo.
Ecco una stringa:.
% E6% 82% CCI-T% 8C% 01 + A
Passare al http://www.tareeinternet.com/scripts/unescape.html e decodificarlo. Questo è il mio originale (è una stringa crittografata RC4). Voglio che Node restituisca quella stringa.
Sembra 'unescape (str)' lo decodifica proprio come la pagina che hai menzionato; sembra che 'querystring.unescape()' si occupi solo di stringhe UTF-8 codificate, non stringhe di byte non elaborate. – robertklep