Двоеточие в URL-адресе разрешается в 400 Bad Request

Почему этот URL разрешается в ошибка 400, неверный запрос?

http://localhost:2785/api/ticker/Web.App.QuotesReaders/search=se%3Aabb

Моя среда — Visual Studio 2010, MVC 4, а используемый контроллер — WebApiController.

%3A — это двоеточие в URL-кодировке.

РЕШЕНИЕ

Это работает по какой-то причине:

http://localhost:2785/api/ticker?className=Web.App.QuotesReaders&search=se%3Aabb

... что означает, что я не мог не указывать этот маршрут в global.asax.cs:

/api/ticker/{className}/{search}

... ни этот ...

/api/ticker/{className}/search={search}

... но этот ...

/api/ticker

Для получения дополнительной информации: http://www. hanselman.com/blog/ExperimentsInWackinessAllowingPercentsAnglebracketsAndOtherNaughtyThingsInTheASPNETIISRequestURL.aspx

5
задан Bridget the Midget 8 April 2012 в 21:17
поделиться