Asp.net WEB API. Какие проблемы могут возникнуть, если я использую POST вместо PUT и DELETE?

Я только начинаю использовать Web API, и хотя мне было очень легко создавать нужные мне методы и некоторые конфигурации, теперь я столкнулся с проблемой, которую не знаю, как решить.

Некоторые приложения, которые будут использовать мои услуги, очень старые и не поддерживают методы DELETE и PUT (например, приложения j2me).

Я обнаружил, что можно выполнить какую-то эмуляцию метода, передав что-то вроде этого:

_method=DELETE|PUT 

Однако я не совсем уверен, сможет ли Web API интерпретировать это, и, кроме того, я не имею ни малейшего представления, как это сделать. По этим причинам я думаю просто использовать методы POST для обработки обновлений и удалений. Сказав это, каких осложнений я могу ожидать, если не использую все стандартные методы??

Как всегда, любая помощь будет БОЛЬШОЙ признательна

Заранее спасибо.

П.Д. Было бы здорово, если бы кто-нибудь знал, как сделать так, чтобы POST с _method направлялся в DELETE() или PUT()


person eddy    schedule 16.06.2014    source источник


Ответы (2)


Это довольно распространено, и для него даже есть несколько стандартный http-заголовок. Это называется "переопределение метода http", и в этом вопросе вы найдете много полезного X-HTTP-Method-Override возвращает NotFound (404) в веб-API ASP.NET

person Robert Levy    schedule 16.06.2014

Благодаря Роберту Леви я знал, как называется эта задача. Как только я узнал, в чем проблема, я немного погуглил и в этом блоге нашел, как ее решить:

http://www.hanselman.com/blog/HTTPPUTORorDELETENotAllowedUseXHTTPMethodOverrideForYourRESTServiceWithASPNETWebAPI.aspx

person eddy    schedule 16.06.2014
comment
Хотя теоретически это может ответить на вопрос, было бы предпочтительнее включить сюда основные части ответа и предоставить ссылку для справки. . - person Clint; 11.04.2018