Как изменить проверку запроса?

Мне нужно отправлять запросы в мое приложение как часть URL, содержащего строки в кавычках, такие как

/search/"my query"

это выдает ошибку, как указано в следующем вопросе:

Как включить символы кавычек в качестве параметра маршрута? Получение сообщения "Недопустимые символы в пути"

Я хотел бы реализовать предложение Скотта Хансельмана об изменении

<httpRuntime requestPathInvalidCharacters="&lt;,&gt;,*,%,:,&amp;,\" />

значение, чтобы не включать символ кавычки. Но это не представляется доступным в.net 3.5.

Может кто-нибудь указать, как заставить это работать?

1 ответ

Решение

Согласно http://forums.asp.net/t/1335994.aspx/1, пути с символом кавычки ("или%22) не могут быть направлены через путь карты. К счастью, кавычки поддерживаются в параметрах строки запроса.

Например, вместо навигации по маршруту /search/"my query", вы можете получить там, используя путь строки запроса /search?query="my query",

В качестве альтернативы, если вы действительно настроены на сохранение своего пути к карте (возможно, по причинам SEO), вы можете использовать что-то вроде расширения IIS URL Rewrite, чтобы направить этот путь к его аналогу строки запроса, при этом пользователь никогда не будет мудрее.

Другие вопросы по тегам