En este tutorial vamos a ver las diferentes opciones de cURL para Webservices, es decir, cómo pasar datos mediante POST o cómo autenticarnos en caso sea necesario utilizar un usuario y una contraseña.
Lo primero que debemos tener es el ENDPOINT de nuestro servidor en el cual están alojados los servicios web. Luego debemos ver mediante qué método llamaremos a nuestros servicios. Tenemos basicamente 2 opciones para llamarlos.
  • Curl
  • file_get_contents
Cada una de estas opciones tiene sus ventajas y desventajas. En este caso estaremos utilizando Curl para el consumo de los servicios web. En caso no lo sepan, Curl nos permitirá hacer diferentes tipos de “request” o consultas a una página determinada, permitiendonos agregar cabeceras e información adicional a la misma.
Lo primero que debemos hacer es inicial Curl en PHP y guardar el ENDPOINT en una variable. Para esto, debemos tener las siguiente líneas:
Luego debemos poner el tipo de llamada que será (POST, PUT, GET, etc) y en caso tenga parámetros, también debemos agregarlos. Esto lo podemos hacer de la siguiente forma:
Luego, en caso de que nuestro servidor de servicios web requiera autenticacion, debemos enviarle el usuario y password de la siguiente forma:
Luego debemos especificar nuestro ENDPOINT. Para esto, agregamos lo siguiente:
Por último, debemos consumir el servicio web. Al momento de ser consumido, debemos guardar el resultado que este devuelve para posterior uso. Esto lo podemos realizar de la siguiente forma:
Ya teniendo guardado el resultado en la variable $result, vamos a cerrar la conexión:
Con esto indicado, ya hemos podido consumir el servicio web autenticandonos con un usuario y contraseña además de guardar el resultado en la variable $result. A continuación se muestra el código consolidado: