web-dev-qa-db-ja.com

url変数のスラッシュ

次のように、ページに動的なURLを持つようにcoldfusionアプリケーションを設定しました

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

ただし、変数名には次のようなスラッシュが含まれることがあります。

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

私のアプリケーションでは、変数名のスラッシュがウェブサイトの異なるセクション、アーティストアルバムを表していると想定しているため、これが問題を引き起こしています。そのため、URLは失敗します。

とにかくこれが起こるのを防ぐ方法があるのだろうか?変数名のスラッシュを別の文字に置き換える関数を使用する必要がありますか?

89
namtax

スラッシュを%2Fとしてエスケープする必要があります。

146
SLaks

スラッシュ/を、アンダースコア_のようなものに簡単に置き換えることができます(Wikipediaがスペースに使用するものなど)。特殊文字をアンダースコアなどに置き換えることは一般的な方法です。

17
Caleb Thompson

これらをエスケープする必要がありますが、手動で%2Fに置き換えるだけではいけません。これにはURLEncoderを使用できます。

例:URLEncoder.encode(url, "UTF-8")

その後、あなたは言うことができます

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