Pregunta

Estoy buscando algunos buenos enlaces con mejores prácticas y código de muestra sobre la creación DESCANSARServicios web completos utilizando .NET.

Además, cualquier otra aportación que pueda tener sobre REST será muy apreciada.

¿Fue útil?

Solución

Servicios de datos ADO.Net hace que sea realmente fácil de construir y consumir Servicios web RESTful en el mundo .Net, pero aún así es importante comprender los conceptos.En comparación con WCF (que agregó soporte REST más adelante), ADO.Net Data Services se creó principalmente para REST.

Directrices para crear servicios web RESTful Tiene toda la información sobre los recursos que necesitas.

Este es otro útil Entrada de blog:

Las restricciones de interfaz uniforme describen cómo un servicio creado para la Web puede ser un buen participante en la arquitectura Web.Estas restricciones se describen brevemente a continuación:

1) Identificación de recursos:Un recurso es cualquier elemento de información que puede nombrarse y representarse (p. ej.un documento, el precio de una acción en un momento determinado, el tiempo actual en Las Vegas, etc.).Los recursos de su servicio deben identificarse mediante URI.

2) Manipulación de recursos vía representaciones:Una representación es la representación física de un recurso y debe corresponder a un tipo de medio válido.El uso de tipos de medios estándar como formatos de datos detrás de su servicio aumenta el alcance de su servicio al hacerlo accesible a una amplia gama de clientes potenciales.La interacción con el recurso debe basarse en la recuperación y manipulación de la representación del recurso identificado por su URI.

3)Mensajes autodescriptivos:Seguir los principios de apatridia en las interacciones de su servicio, utilizar tipos de medios estándar e indicar correctamente la capacidad de almacenamiento en caché de los mensajes mediante el uso del método HTTP y los encabezados de control garantiza que los mensajes sean autodescriptivos.Los mensajes autodescriptivos permiten que los mensajes sean procesados ​​por intermediarios entre el cliente y el servidor sin afectar a ninguno de los dos.

4) Hipermedia como motor del estado de la aplicación:El estado de la aplicación debe expresarse mediante URI e hipervínculos para realizar la transición entre estados.Esta es probablemente la más controvertida y menos comprendida de las limitaciones arquitectónicas establecidas en Disertación de Roy Fielding.De hecho, la disertación de Fielding contiene argumentos explícitos en contra del uso de cookies HTTP para representar el estado de la aplicación para recalcar este punto, pero a menudo se ignora.

Otros consejos

Fundación de comunicación de Windows soporta el modelo REST desde .NET 3.5.

Puede encontrar documentación y ejemplos de código en MSDN:

DESCANSO y POX

Algunos recursos para aprender REST:

La mejor introducción que he leído es la Libro de servicios web RESTful, que va más allá de explicar el modelo y los principios y, de hecho, le muestra cómo diseñar un servicio web RESTful.Lo más útil es su lista de verificación sobre cómo escribir/especificar una API REST:

  1. Calcule el conjunto de datos [es decirespecificar el modelo de datos].
  2. Divida el conjunto de datos en recursos.Para cada tipo de recurso:
  3. Nombra los recursos con URI.
  4. Exponer un subconjunto de la interfaz uniforme [es decir.especifique qué métodos HTTP se utilizan y qué hacen].
  5. Diseñar las representaciones aceptadas del cliente [p. ej.el formato XML lo puedes PUT o PUBLICAR].
  6. Diseñar las representaciones entregadas al cliente [p. ej.el XML que obtienes].
  7. Integre este recurso en recursos existentes, utilizando enlaces y formularios hipermedia.
  8. Considere el curso típico de los acontecimientos:¿Qué se supone que pasará?[Esto es como un escenario de éxito principal de caso de uso.]
  9. Considere las condiciones de error.[Esto es como escenarios de excepción de casos de uso.]

Los artículos del "Web RESTful"serie en xml.com son una gran introducción.

El autor (Joe Gregorio, de la fama del protocolo de publicación Atom) también publica regularmente artículos perspicaces sobre todas las cosas descansan en sublog. "RESTificar DayTrader"(REST Architecture aplicada a una aplicación de negociación de acciones de referencia) es un buen punto de partida.También me gusta "¿Por qué tantos marcos web Python?", que muestra la implementación de un pequeño marco web tranquilo en Python.

Cuando comencé a desarrollar servicios web REST, leí el Libro de reglas de diseño de API REST de Mark Masse.Una vez que conozca los conceptos básicos y la teoría, podrá implementar REST con WCF, HTTPListener o ServiceStack.Todos estos frameworks son .NET y están bastante bien documentados...

Le recomendaría la pila de servicios (http://www.servicestack.net/). Hay suficiente información en la web para comenzar.

WCF ofrece la API web ASP.NET, está bien, pero no la uso.

En cualquier caso, hoy en día no existe un buen marco REST, debes elegir uno que te resulte fácil de usar y luego aplicar la teoría que aprendiste en el libro.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top