Можно ли изменить ASP Ограничения маршрута .NET MVC 3, которые возвращают 400 Bad Request с телами JSON?

Я разрабатываю некоторые ресурсы REST, используя платформу ASP.NET MVC 3. Пока все было отлично, мне нравится гибкость MVC 3, и создавать с ее помощью REST-сервисы совсем несложно.Одна из областей, где у меня были трудности, - это ограничения маршрута в Global.asax. Во-первых, они никогда не работают должным образом (в том числе один ВСЕГДА возвращает 404, даже если ввод определенно соответствует требованиям ограничения ... но это другой вопрос).

Во-вторых, что более важно, результат, возвращаемый при сбое ограничения, всегда является HTML-страницей. Если предположить, что ограничения работают, то результатом будет HTML, который действительно мешает смешению, когда все потребители этих служб REST будут принимать типы данных, такие как application / json, text / xml, возможно bson и т. Д. Мне действительно нужно чтобы иметь возможность устранять ошибки в наших клиентах напрямую, а не просто взрывать и регистрировать html для разрешения боковой полосы.

Можно ли изменить то, что возвращается в ответ на ограничение маршрута? Можно ли сделать то, что возвращается, динамическим, чтобы, если клиент, отправляющий запрос, принимал только application / bson, мы могли генерировать приемлемый ответ, а не просто генерировать стандартный ответ одного типа mime?

5
задан jrista 29 February 2012 в 17:43
поделиться