ОТДЫХ на IIS - PullRequest
       19

ОТДЫХ на IIS

10 голосов
/ 12 марта 2009

Мне интересно, сколько людей, использующих стек разработки Microsoft (IIS и / или ASP.NET), на самом деле используют REST? Если да, то какие формы отдыха используются?

REST можно классифицировать миллионами способов, но для целей этого вопроса я классифицирую его следующим образом:

  1. Радикально ОТДЫХА: используя все Методы HTTP PUT / POST / GET / DELETE
  2. Умеренный ОТДЫХ: Использование GET / POST
  3. REST Hybrid: используется только GET или HTTP-метод POST, но следует RESTful принципы адресуемости и государство.

В классе, который я преподаю, мы пытались внедрить «радикально RESTful» сервис на IIS, но у нас были трудности с реализацией метода PUT. Похоже, что внедрение PUT в IIS не вызывает большого интереса, поэтому мне интересно, сколько людей на самом деле используют полноценный REST? Вы используете REST?

Ответы [ 8 ]

11 голосов
/ 19 марта 2009

Я участвую в проекте, который использует WCF REST на IIS, но, конечно, я рекомендую взглянуть на созданную мной платформу: OpenRasta - это стек с открытым исходным кодом .net, который значительно упрощает реализацию REST.

Google твой друг. Основной сайт http://trac.caffeine -it.com / openrasta .

8 голосов
/ 12 марта 2009

Я думаю, что одной из причин отсутствия шумихи вокруг REST в стеке IIS было первоначальное принятие Microsoft SOAP как способа, правды и света, когда дело дошло до веб-сервисов - особенно с учетом того, что Windows Communication Foundation в значительной степени ориентирован на SOAP .

Они продолжили выпуск начального комплекта WCF REST , который следует из выпуска .NET 3.5, а также служб данных ADO.NET, являющихся частью .NET 3.5 SP1.

Как указывает Магнус , Microsoft с тех пор выпустила ASP.NET Web API , который основывается на функциях платформы ASP.NET MVC для обеспечения единого подхода к сервисам RESTful. на IIS.

ASP.NET Web API - это инфраструктура, упрощающая создание служб HTTP, которые охватывают широкий круг клиентов, включая браузеры и мобильные устройства. ASP.NET Web API является идеальной платформой для создания приложений RESTful в .NET Framework.

4 голосов
/ 30 мая 2011

Упомянутый в ответе «Жаф - Бен Дугид» WCF Rest Toolk устарел. Теперь он заменен проектом WCF Web API .

Редактировать: который теперь также устарел и заменен ASP.NET Web API!

3 голосов
/ 12 марта 2009

Зависит от того, как вы к нему подходите.

По умолчанию IIS ограничивает глаголы на страницах ASP.NET GET, HEAD, POST и DEBUG. Вы, конечно, можете сказать, что он также принимает PUT, отредактировав отображение обработчика. Предполагая, что вам нужно собственное расширение, вы сделаете что-то вроде

<httpHandlers>
    <add path="*.example" type="System.Web.UI.PageHandlerFactory" verb="GET, HEAD, POST, PUT, DELETE, DEBUG"/>
</httpHandlers>

Если вы хотите переназначить .aspx, вы, конечно, можете сделать то же самое, предполагая, что сервер сконфигурирован так, чтобы разрешить вам /

2 голосов
/ 12 марта 2009

Я почти уверен, что службы данных Microsoft ADO.NET используют службы RESTful. Возможно, стоит проверить ... кроме того, чтобы быть спокойным, это действительно крутая технология.

Вот выдержка из белой бумаги:

Целью Microsoft® ADO.NET Data Services является предоставление приложениям возможности предоставлять данные в качестве службы данных, которая может использоваться веб-клиентами в корпоративных сетях и в Интернете. Служба данных доступна через обычные HTTP-запросы с использованием стандартных HTTP-глаголов, таких как GET, POST, PUT и DELETE, для выполнения CRUD-операций над службой. Формат полезной нагрузки, используемый службой, контролируется приложением, но все параметры являются простыми, открытыми форматами, такими как JSON и Atom / APP.

Вот белая бумага и это домашняя страница (по крайней мере, я думаю, что это домашняя страница)

HTHS, Charles

1 голос
/ 12 марта 2009

Я использую класс .Net, HttpListener, который является механизмом веб-сервера IIS (http.sys) без инструментов администратора IIS. Я работаю со всеми глаголами HTTP. При желании вы можете добавить к нему среду исполнения ASP.Net, но вам это не нужно.

Фактически, в некоторых случаях мы использовали версию PATCH в качестве эксперимента. Как только вы приступите к основам, глагол - это просто строка в одном из заголовков HTTP.

Вы на самом деле не можете классифицировать REST миллионами способов. Существуют различные способы использования HTTP для создания распределенных приложений, но существует только одно определение REST.

1 голос
/ 12 марта 2009

Здесь есть отличная статья в блоге обо всех этих методах в контексте REST:

http://reinout.vanrees.org/research/phd/various-stuff/getputpostdelete

1 голос
/ 12 марта 2009

Какая версия IIS? В IIS6 вам нужно включить WebDAV, чтобы разрешить PUSH-запросы (нет, я тоже не думаю, что это имеет смысл :-)) Я не думаю, что это так в IIS7.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...