0
requestPathInvalidCharacters
指定無效字符列表,這將觸發400 Bad Request
響應。默認情況下,該列表包含:"<,>,*,%,&,:,\\,?"
。這包括問號和反斜槓。但據我所見,這兩個角色永遠不會被視爲無效。如何使用問號或反斜槓觸發400錯誤請求
第一個問號後面的每個URL字符都將用在查詢字符串中。所以像/path?foo?bar
這樣的URL被認爲是有效的。在這個例子中,查詢字符串由單個無鑰匙值foo?bar
組成。即使/?????
是有效的網址。
反斜槓自動轉換爲正斜槓,所以我不明白這些可能被認爲是無效的。
我知道'%'和'<'可以觸發400個響應,默認情況下它們在'requestPathInvalidCharacters'中。但爲什麼那裏有'?'和'\\'?他們如何觸發400個迴應? –
這是一個猜測,但我假設他們符合條件:'?'是請求查詢的一部分,而不是路徑。我對'\\\'的唯一猜測是RFC2396將它定義爲需要由於作爲分隔符而進行轉義,並且它不是有效的。 – Vetsin