Nueva pregunta

Pregunta:

Fecha: 23-11-2015 10:45:41 (En Español)

¿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)));
	}
}


Etiquetas: PHP - Pregunta - Webservices 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:49:07 aaa ok, ya te entiendo. entonces gracias   Votos: 0 - 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:53:48 Gracias ,Juan Quinto   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
 
frjcbbae garagebible.com