Decodificare un URL codificato - Script ASP
In ASP esiste una funzione che ha il compito di codificare i caratteri di una stringa in un formato URL friendly, convertendo ad esempio gli spazi nel carattere %20 o sostituendo simboli con i rispettivi valori codificati o entità.
La funzione si chiama Server.URLEncode().
Ecco un esempio concreto di utilizzo di URLEncode().
<% ' Definisco una stringa str = "http://www.weppos.com/forum/forum_posts.asp?TID=25&PN=1" ' Codifico l'URL strUrl = Server.URLEncode(str) ' Stampo la stringa codificata Response.Write(strUrl) %>La stampa produrrà il seguente output
http%3A%2F%2Fwww%2Eweppos%2Ecom%2Fforum%2Fforum%5Fposts%2Easp%3FTID%3D25%26PN%3D1Sfortunatamente, ASP non mette a disposizione alcuna funzione di decodifica delle stringhe codificate con questo sistema.
Può venirci in aiuto la funzione seguente che richiama ciascun carattere non alfanumerico codificato sostituendolo con il rispettivo originale.<% public function URLDecode(url) ' Decodifica ogni carattere for ii = 1 to 255 url = Replace(url, Server.URLEncode(chr(ii)),chr(ii)) next ' Ritorna il valore URLDecode = url end function %>Per poter utilizzare la funzione sarà sufficiente includerla e richiamarla.
<% strUrl = "http%3A%2F%2Fwww%2Eweppos%2Ecom%2F" str = URLDecode(strUrl) Response.Write(str) %>Note: questa funzione è tratta dal sito www.oscarjsweb.com, ad oggi offline.

