2011-06-17 12 views
5

Si los servicios web basados ​​en REST son tan simples como GET y POSTing a una url y analizar la respuesta, ¿qué necesitamos exactamente de wsdl? Cuál es el punto de. Entiendo que al usar servicios basados ​​en SOAP se usa para construir las solicitudes y respuestas SOAP pero realmente no veo por qué visual studio me proporciona un wsdl cuando creo un servicio basado en REST ...¿Cuál es el punto en un WSDL con un servicio basado en el resto?

Respuesta

4

WSDL no tiene sentido para los servicios REST creados con WCF porque WCF solo admite WSDL 1.1 (o 1.0) que no pueden describir el dispositivo REST. Si intenta utilizar WSDL generado para el servicio WCF REST para crear un proxy de cliente, no podrá llamar al servicio de todos modos. Las plantillas de Visual Studio para REST no exponen los metadatos, por lo que obtendrá un WSDL inútil solo si agrega el comportamiento de ServiceMetada (y posiblemente también el punto final de Mex).

WSDL 2.0 y WADL son compatibles con la descripción de los servicios REST y el punto es similar al de los servicios SOAP: describa qué puede hacer con el servicio pero de forma REST.

2

No tiene sentido. WSDL es solo una descripción estandarizada de lo que un servicio expone y cómo puede invocarse. Usted no necesita WSDL, pero necesita alguna forma de documentar qué se puede hacer con su servicio, para que los clientes sepan cómo invocarlo.

6

WSDL está diseñado para permitir a los clientes descubrir capacidades de servicio, principalmente en tiempo de diseño. REST tiene la restricción de hipermedios que requiere que todas las capacidades del servicio se puedan descubrir en el tiempo de ejecución a través de las representaciones vinculadas que devuelven.

Los servicios REST apropiados son naturalmente detectables, por lo tanto, no es necesario además una especificación WSDL.

+0

Entonces, ¿cómo hacer que los servicios REST sean "naturalmente" detectables? La única forma en que alguna vez descubrí lo que ofrece un servicio REST es leyendo los documentos API. – ZimSystem

Cuestiones relacionadas