2017-08-15 88 views
0

我有一個這樣的URL:本地主機:8080 /演示/分號網址

當我打電話localhost:8080/demo/'''''''''它做工精細。

但是,當我嘗試localhost:8080/demo/;;;它不工作,並返回HTTP代碼404找不到。

我試了幾個特殊字符# % \ ? /,它也返回了400。

任何人都可以爲我解釋嗎? 非常感謝!

+0

請閱讀本文並相應地編輯您的問題:https://stackoverflow.com/help/how-to-ask – Vega

+0

你想實現什麼? – ThomasEdwin

+0

1)在這兩種情況下,你的意思是「404」嗎? 2)是否在這個URL上運行應用程序?你編程了嗎?如果不是,哪一個呢? 3)'/ demo /'''''會給出'/ demo /'相同的結果/內容嗎? – unor

回答

0

這些特殊字符不能直接在URL中使用, ,因爲它們在那裏有特殊的含義。 例如: /是路徑內隔板,馬克一個URL的查詢部分, #標誌着一個頁面內部鏈路, 等

Wikipedia: Percent-encoding reserved characters引用:

當來自保留集(「保留字符」)的字符在特定上下文中具有特殊含義(「保留目的」),並且URI方案表示有必要使用該字符 我其他的目的,那麼字符必須是百分比編碼。 編碼保留字符的百分比編碼涉及將 字符轉換爲ASCII中對應的字節值,然後將 表示爲一對十六進制數字。數字 前面有一個用作轉義字符的百分號(%), 然後用於URI中而不是保留字符。

例如:;是保留字符。因此,當;在URL中出現 但沒有其特殊含義時,則需要將 替換爲%3a