HTTP-запрос не разбивает путь от строки запроса в каком-либо запросе - PullRequest
0 голосов
/ 26 марта 2012

У меня странная проблема, которую я не знаю, как решить.

Обычное поведение для .net, если у вас есть URL-адрес вроде: /action?id=abc&=type=3 переменная сервера похожа на:

URL: /action  
PATH_INFO: /action
QUERY_STRING: id=abc&=type=3  

Но тут возникает странное поведение: когда запрос приходит от mediapartners-google, переменные сервера не разделяют URL в вопросительном знаке и имеют вид:

URL: /action?id=abc&=type=3   
PATH_INFO: /action?id=abc&=type=3   
QUERY_STRING: 

Итак, механизм маршрутизации пытается найти имя действия с именем action?id=abc&=type=3 и не находит его, выдавая ошибку 404.

Кто-нибудь знает, почему это происходит?

1 Ответ

0 голосов
/ 26 марта 2012

Для MVC, когда механизм маршрутизации совпал с маршрутом, остальные добавляются в необязательный параметр.Вполне возможно, чтобы маршрут соответствовал, прежде чем он достигнет знака вопроса.Похоже, вам нужен другой маршрут для решения этого дела.Также помните, что вам нужны ваши маршруты в порядке от самого сильного до самого слабого, поскольку они обрабатываются первым подходящим маршрутом.

...