Foros del Web » Programando para Internet » PHP »

Validar si un usuario esta logeado usando una API

Estas en el tema de Validar si un usuario esta logeado usando una API en el foro de PHP en Foros del Web. Hola gracias por leer mi mensaje. Tengo el siguiente problema. Necesito saber desde sitio1.com que sitio2.com un usuario este logeado. Tengo una API creada por ...
  #1 (permalink)  
Antiguo 13/03/2012, 08:51
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Validar si un usuario esta logeado usando una API

Hola gracias por leer mi mensaje. Tengo el siguiente problema.

Necesito saber desde sitio1.com que sitio2.com un usuario este logeado. Tengo una API creada por mi. La cual me falta solo la funcion de validar si el usuario esta logeado para asi mostrarle su nombre y en caso contrario el formulario de Login.

actualmente tengo una funcion en Curl llamada login

function login($appID){

$cUrl = curl_init();
curl_setopt($cUrl,CURLOPT_URL,"http://localhost/ComApi/floggia-gateway/access.php?APPID=".$appID."");
curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($cUrl);
curl_close($cUrl);
return $result;
}

$verify = login(6);
echo $verify;

Pero cuando envio la APP ID a el servidor, La idea es que vea si estoy logeado, ya que deberia en el access.php validar si la $_SESSION esta creada para asi enviarle el Token de acceso.

Ayuda porfavor.. Gracias por su pronta respuesta.
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #2 (permalink)  
Antiguo 13/03/2012, 11:00
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Validar si un usuario esta logeado usando una API

¿Cual es la duda/problema?
  #3 (permalink)  
Antiguo 13/03/2012, 11:03
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Respuesta: Validar si un usuario esta logeado usando una API

Gracias por responder GatorV . La duda es que necesito saber si un usuario esta logeado pero saberlo desde otro servidor. es que estoy haciendo mi propia version de oAuth porque el oAuth en si no lo comprendi.. lo tengo todo listo pero necesito saber eso para validar el login... y buscar una solucion de


Preguntarle al servidor con mi APPID en el servidor1 y que el agarre mi APPID y agarre la sesion del usuario en el servidor2 y me responda con un token ID a el servidor1 el codigo de arriba envia la appID a access.php y el debe agarrar $_SESSION mostrar un json de el token ID del usuario logeado actualmente..
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #4 (permalink)  
Antiguo 13/03/2012, 13:29
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Validar si un usuario esta logeado usando una API

Lo que tendrías que hacer es por ejemplo no usar sesiones como tal, ya que las sesiones son entre el browser y tu servidor, no entre aplicación y aplicación.

Tienes que primero logearte en el servidor 1 y ahí debes de mantener una tabla en una base de datos con las sesiones activas o no activas.

Después de tu servidor 2, envías a tu API el ID de tu app y un Token de seguridad, haces el query, para ver si el usuario esta activo o no.

Después necesitas implementar un método para hacer logout en el servidor 1 para cerrar la sesión y también un método para que cada x tiempo se refresque la sesión y esta expire.

No puedes usar $_SESSION ya que esta no te va a funcionar de la manera que esperas (desde servidor2 a servidor1 es una sesión diferente).

Saludos.

Etiquetas: api, formulario, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:45.