Как изменить проверку запроса?
Мне нужно отправлять запросы в мое приложение как часть URL, содержащего строки в кавычках, такие как
/search/"my query"
это выдает ошибку, как указано в следующем вопросе:
Как включить символы кавычек в качестве параметра маршрута? Получение сообщения "Недопустимые символы в пути"
Я хотел бы реализовать предложение Скотта Хансельмана об изменении
<httpRuntime requestPathInvalidCharacters="<,>,*,%,:,&,\" />
значение, чтобы не включать символ кавычки. Но это не представляется доступным в.net 3.5.
Может кто-нибудь указать, как заставить это работать?
1 ответ
Согласно http://forums.asp.net/t/1335994.aspx/1, пути с символом кавычки ("или%22) не могут быть направлены через путь карты. К счастью, кавычки поддерживаются в параметрах строки запроса.
Например, вместо навигации по маршруту /search/"my query"
, вы можете получить там, используя путь строки запроса /search?query="my query"
,
В качестве альтернативы, если вы действительно настроены на сохранение своего пути к карте (возможно, по причинам SEO), вы можете использовать что-то вроде расширения IIS URL Rewrite, чтобы направить этот путь к его аналогу строки запроса, при этом пользователь никогда не будет мудрее.