barre nelle variabili url

Ho impostato la mia applicazione coldfusion per avere URL dinamici nella pagina, come ad esempio

www.musicExplained/index.cfm/artist/:VariableName 

Tuttavia i miei nomi di variabili a volte contengono barre, come ad esempio

 www.musicExplained/index.cfm/artist/GZA/Genius 

Questo sta causando un problema, perché la mia applicazione presume che la barra nel nome della variabile rappresenti una sezione diversa del sito web, gli album degli artisti. Quindi l’URL fallirà.

Mi chiedo se ci sia comunque da impedire che ciò accada? Devo usare una funzione che sostituisca le barre nei nomi delle variabili con un altro carattere?

    È necessario sfuggire alle barre come %2F .

    Potresti facilmente sostituire le barre in avanti / con qualcosa come un trattino basso _ come Wikipedia usa per gli spazi. Sostituire caratteri speciali con caratteri di sottolineatura, ecc. È una pratica comune.

    È necessario sfuggire a quelli, ma non sostituirlo manualmente con %2F . È ansible utilizzare URLEncoder per questo.

    Ad esempio URLEncoder.encode(url, "UTF-8")

    Quindi puoi dire

     yourUrl = "www.musicExplained/index.cfm/artist/" + URLEncoder.encode(VariableName, "UTF-8")