De SOAP a servicios API Rest en Angular


#1

Buenas a todos.

He sido contratado hace casi ya un mes en una empresa y tengo un proyecto de migración. Debo pasar una página que está con SOAP a los servicios Rest usando el Framework Angular. Pero soy nuevo en el framework y en el uso de servicios. Si alguien sabe y puede ayudarme le agradecería muchísimo.


#2

En primer lugar, ¿tienes que migrar el servidor o el cliente? Angular es un framework frontend, puedes usarlo para consumir el API REST, pero no para servir datos.


#3

El servidor…
Sólo que soy nuevo en el tema y no sé muchos conceptos sobre ésto. O sea, la idea el volver a hacer la aplicación con API REST y en este momento está usando es SOAP.
Disculpa si no me hago entender bien.
¿Qué me aconsejas?


#4

Pues Angular desde luego que no, vaya. Para servidores REST hay muchas opciones válidas. Todo depende de los lenguajes que controles, hasta donde soporta el servidor, etc.

Lo más habitual y “sencillo” es hacerlo con PHP, pero alejándonos de ahí, tienes cosas como Node + Express (JavaScript), Flask o Django Rest Framework (Python), Rails API (Ruby), etc.


#5

En que lenguaje está el servidor? Depende de cómo esté implementando puede hacerse el cambio casi automático


#6

Te ha faltado decir … Grails si está en Java. Bueno, venga, y Kotlin (que es un lenguaje desconozco si tiene un framework)


#7

Te comparto una parte del proyecto:

function llamadoNewWebServiceProyectos() {
				var soapEnv = "<Envelope xmlns='http://www.w3.org/2003/05/soap-envelope'><Body><GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'><listName>Proyectos Activos</listName></GetListItems></Body></Envelope>";
				$.ajax({
					url: "http://proyectos.ceiba.com.co/_vti_bin/lists.asmx",
					type: "POST",
					dataType: "xml",
					data: soapEnv,
					complete: processResultNewProyectos,
					contentType: "text/xml; charset=\"utf-8\""
				});
			};

#8

Uy, Sharepoint. Que cool. Eso es C#, si mal no recuerdo.


#9

¿Pero tienes que adaptar la parte cliente o la parte servidor?

Lo que nos has puesto es la parte cliente.