Это хорошая идея, чтобы проверить строку запроса HTTP и указать ошибку, когда есть неожиданный параметр? - PullRequest
2 голосов
/ 30 марта 2011

Моему приложению ASP.NET придется обрабатывать HTTP-запросы GET, которые будут иметь следующий формат URL:

http://mySite/getStuff?id="actualIdHere"

В настоящее время требуется проверить, что в строке запроса отсутствуют параметры, кроме id и указывают на ошибку типа «передан неизвестный параметр P».

Является ли такое требование хорошей идеей?Будет ли это мешать некоторым явно допустимым случаям использования приложения, о котором я не задумывался?

Ответы [ 4 ]

3 голосов
/ 30 марта 2011

Было бы лучше просто проверить наличие идентификатора.

Проверка неизвестных параметров не имеет большого значения, их просто игнорируют.

Просто отредактировал мой ответ здесь:

Существуют также решения для отслеживания, которые добавят к вашей строке запроса.

1 голос
/ 31 марта 2011

Это может повлиять на прямую совместимость. Например, если у вас есть отдельные клиентские приложения / веб-сайты, которые фактически вызывают эти URL-адреса, и будущие версии этих клиентов могут предоставлять дополнительные параметры для getStuff (например, порядок сортировки, обратные ссылки и т. Д.), Жесткие требования к параметрам могут усложнить его. плавно развертывать новые версии (т.е. не может развертывать новые клиенты до тех пор, пока сервер не будет обновлен).

Это в дополнение к параметрам переадресации трафика, которые могут получить общедоступные веб-сайты, как упоминалось в других ответах.

1 голос
/ 30 марта 2011

Это зависит от вашей целевой аудитории.

Это не очень хорошая практика для общедоступных веб-сайтов, где вы знаете о SEO, например, если вы внедряете Google Analytics, то пользователь может перейти на ваш сайт из результатов поиска.есть параметр в URL-адресе, такой как googleclid.

Однако на более защищенных веб-сайтах это нормально.

1 голос
/ 30 марта 2011

На ум приходит веб-аналитика.Если ваше приложение будет общедоступным веб-сайтом, вы захотите внедрить некоторое отслеживание вашего трафика (например, Google Analytics).Если вы хотите реализовать маркетинговую кампанию для привлечения трафика на ваш сайт, вам, вероятно, потребуется добавить несколько параметров (специфичных для используемой системы отслеживания) в строку запроса, чтобы проверить эффективность вашей кампании.

...