次のように、ページに動的なURLを持つようにcoldfusionアプリケーションを設定しました
www.musicExplained/index.cfm/artist/:VariableName
ただし、変数名には次のようなスラッシュが含まれることがあります。
www.musicExplained/index.cfm/artist/GZA/Genius
私のアプリケーションでは、変数名のスラッシュがウェブサイトの異なるセクション、アーティストアルバムを表していると想定しているため、これが問題を引き起こしています。そのため、URLは失敗します。
とにかくこれが起こるのを防ぐ方法があるのだろうか?変数名のスラッシュを別の文字に置き換える関数を使用する必要がありますか?
スラッシュを%2F
としてエスケープする必要があります。
スラッシュ/
を、アンダースコア_
のようなものに簡単に置き換えることができます(Wikipediaがスペースに使用するものなど)。特殊文字をアンダースコアなどに置き換えることは一般的な方法です。
これらをエスケープする必要がありますが、手動で%2F
に置き換えるだけではいけません。これにはURLEncoder
を使用できます。
例:URLEncoder.encode(url, "UTF-8")
その後、あなたは言うことができます
yourUrl = "www.musicExplained/index.cfm/artist/" + URLEncoder.encode(VariableName, "UTF-8")