Está en la página 1de 8

Servicios Web

Link a la presentación Prof. Ramiro Estigarribia


¿Qué son los Servicios Web?
Son programas que brindan funcionalidades útiles y son
publicados en servidores para que puedan ser invocados a
través de una red.

Son cajas negras, en el sentido que no conocemos su


implementación interna ni hay que preocuparse por ello, ya
que lo importante es conocer qué funcionalidad brindan, qué
parámetros necesitan recibir y qué devuelven.
Flujo de un Servicio Web
Comienza en el cliente, en este
caso vamos a suponer un
smartphone, el cuál manda una
petición a un servidor web, este
servidor según sus reglas
atenderá dicha petición y nos
regresará una respuesta.
¿Cómo son los parámetros?

Los parámetros que participan en la comunicación con Web


Services, son denominados “mensajes” y las aplicaciones
que invocan a un Web Service pueden ser desarrolladas en
cualquier lenguaje.

Solamente deben ser capaces de crear y consumir los


“mensajes” especificados por el Web Service.
Webservice: Índice de Masa Corporal
if(isset($_GET['nombre']) and isset($_GET['estatura']) and isset($_REQUEST['peso']))
{
$imc = $_REQUEST['peso'] / ($_REQUEST['estatura'] * $_REQUEST['estatura']);
$imc = round($imc, 2);
$arr = array('nombre' => $_REQUEST['nombre'], 'IMC' => $imc);
echo json_encode($arr);
}
else
{
$arr = array('res' => 'error', 'cmd' => 'Datos no estan en formato requerido');
echo json_encode($arr);
} https://phpsandbox.io
Webservice: Listar Alumnos
<?php
include 'conexion.php';
$sql = "select * from alumnos";
$resultado = $db->query($sql);
while($fila = $resultado->fetch_assoc())
{
$arr[] = $fila;
}
print json_encode($arr);
?>
https://programacion3.ml/webservice/listar.alumnos.php
Imprimir datos recibidos de un Webservice
<?php
$url = "https://programacion3.ml/webservice/listar.alumnos.php";
$resultado = file_get_contents($url);
$json=json_decode($resultado);

foreach($json as $fila){
print "$fila->nombre $fila->apellido $fila->cedula <br>";
}
?>

https://phpsandbox.io
Webservice: Insertar Alumno
include 'conexion.php';
$sql = "insert into alumnos (nombre, apellido, cedula)
values('$_REQUEST[nombre]','$_REQUEST[apellido]', '$_REQUEST[cedula]')";
if(! $db->query($sql)){
$arr = array('respuesta' => 'error', 'mensaje' => 'Error al insertar');
echo json_encode($arr);
die;
}
$arr = array('respuesta' => 'ok', 'mensaje' => 'Insertado con Exito');
echo json_encode($arr);

También podría gustarte