Pregunta:
Fecha: 23-11-2015 10:45:41
(En Español)
La pregunta surge porque yo manejo mis web services de una manera y ayer me dijeron que no era la manera estandar de hacerlo, les pondre un ejemplo y les agradecería sus comentarios y codigos de ejemplo, para poder mejorar mi código gracias
Votos: 3 - Respuestas: 12 - Vistas: 21 Compartir en: Google Facebook Twitter LinkedIn Link
¿Cuál es la manera estándar de manejar los webservice en PHP?[Resuelta]
Buenos Dias, que tal, me habia desaparecido un tiempo de la comunidad por cuestienes de traslado de casa y demas, pero estoy de regreso.La pregunta surge porque yo manejo mis web services de una manera y ayer me dijeron que no era la manera estandar de hacerlo, les pondre un ejemplo y les agradecería sus comentarios y codigos de ejemplo, para poder mejorar mi código gracias
<?php
//Instacia clase conexion
include_once("conexion.php");
new service();
class service{
/**
* Constructor
* Obtiene la variable servicio y dependiendo de su valor elige el method a utilizar
* para desplegar la informacion solicitada en el servicio
*/
function __construct() {
switch ($_GET["service"]) {
case 'user_id':
if(isset($_GET['id_user']))
$this->getUser($_GET['id_user']);
break;
default:
$this->sendJson();
break;
}
}
/**
* getUser
* @param int | $idUser | id de usuario solicitiado
* @return json| todo el row del usuario solicitado
*/
function getUser($idUser){
$conexion = new conexion();
$res = $conexion->selQry("SELECT * FROM usuario WHERE id = ".$idUser);
if ($res != null and $res->num_rows > 0){
while($rowArray = mysqli_fetch_array($res, MYSQLI_ASSOC)){
$data[] = $rowArray;
}
$this->sendJson($data,0,"Registro completo del usuario con id = ".$idUser);
}
$this->sendJson(null,-1,"Ningun usuario encontrado con este ID");
}
/**
* sendJson
* @param mixed | $dato | los datos que se deseen envariar a encodear en JSON
* @param int | $code | codigo de retorno -1 = error, 0 = exito, 1 = accion
* @param string | $message | mensaje a desplegar con especificaciones de el retorno
* @return json | array encodeado en JSON estructurado en la posicion que se envian los parametros
*/
function sendJson($dato = null,$code = -1,$message = "Faltan parametros para completar el servicio"){
die(json_encode(array($dato,$code,$,$message)));
}
}
Votos: 3 - Respuestas: 12 - Vistas: 21 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 23-11-2015 11:28:59 Hola Jony , yo veo bien tu codigo al parecer el q te dijo eso que la forma q usas no es la manera estandar se refirio que no usas el xml
para usar web services existe 2 escenarios
servidor
cliente
adjunto link
http://www.sitepoint.com/web-services-with-php-and-soap-1/
anteriormente los web services solo era realizado con xml
pero ahora con la tecnologia json se presenta como otra alternativa
yo en particular uso JSON por ser mas liviano y mas facil de acceder a la data
JSON
https://es.wikipedia.org/wiki/JSON
saludos Votos: 4 - Link respuesta -
Fecha: 23-11-2015 11:38:38 Genial, Juan Quinto vos podrías darme un ejemplo de el estandar SOAP utilizando JSON?
* muy interesante información la que me diste, gracias
Slds Votos: 0 - Link respuesta -
Fecha: 23-11-2015 11:47:53 Jony , el estandar SOAP usa el xml , ten claroo q el soap usa xml no json Votos: 0 - Link respuesta
-
Fecha: 23-11-2015 11:49:04 SOAP es un estándar muy viejo y poco a poco las empresas han dejado de utilizarlo o sólo proporcionan el acceso para soportar implementaciones viejas. En su lugar se utiliza REST que utiliza los verbos existentes del protocolo http para determinar las acciones a ejecutar. Votos: 1 - Link respuesta
-
-
Fecha: 23-11-2015 11:50:52 Y el estandar REST con las instrucciones CREATE, DELETE, UPDATE. como se podria aplicar en una respuesta JSON? Ernesto Votos: 0 - Link respuesta
-
-
Fecha: 23-11-2015 11:55:46 Ernesto tiene mucha razonnn el soap ya no es utilizado varias han dejadooo de utilizar eso , ahora es JSON por ser mas ligero , facil de acceder , una recomendacion seria de q uses JSON Votos: 0 - Link respuesta
-
Fecha: 23-11-2015 12:04:25 SOAP y REST son dos maneras en que puedes hacer web services.
Ambos aceptan XML y JSON, sin embargo por facilidad casi todo mundo utiliza la combinación REST-JSON
En REST tienes que trabajar con los verbos del protocolo si quieres que sea 100% conforme a la especificación:
POST - Genera un nuevo recurso
GET - Obtiene un recurso
PUT - Actualiza un recurso
DELETE - Elimina un recurso
Jugando con esos 4 verbos puedes tener un solo punto de entrada y el mismo determina qué hacer a partir del verbo.
En implementaciones pseudo-rest lo que se hace es que sólo utilizas POST y GET y vas a crear varios puntos de entrada, uno para cada acción. Teniendo en mente que GET sólo será utilizado para obtener el recurso y los demás puntos de entrada utilizarán POST para simular PUT y DELETE. Votos: 4 - Link respuesta -
Fecha: 23-11-2015 12:16:16 Un ejemplo muy bueno
Using REST APIs in a web application | Quick PHP Tutorial
https://www.youtube.com/watch?v=RTjd1nwvlj4
saludos Votos: 3 - Link respuesta -
Fecha: 23-11-2015 12:23:59 Gracias Ernesto Peimbert, ahora ya comprendo todo :D muchas gracias.
El concepto era el que no tenia claro entonces.
Saludos a los dos y gracias por comentar.
Pregunta Solucionada Votos: 2 - Link respuesta -
Fecha: 23-11-2015 12:51:46 No hay de qué, estamos para ayudarnos y compartir conocimientos.
Saludos! Votos: 1 - Link respuesta
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
