Foros del Web » Programando para Internet » PHP »

Consumir webservice usando PHP a través de SSL

Estas en el tema de Consumir webservice usando PHP a través de SSL en el foro de PHP en Foros del Web. Buenas tardes, me atreví a recurrir a ustedes para solicitarles un consejo sobre como consumir un webservice usando PHP pasando a través de SSL La ...
  #1 (permalink)  
Antiguo 18/05/2016, 15:55
 
Fecha de Ingreso: mayo-2016
Mensajes: 8
Antigüedad: 8 años, 6 meses
Puntos: 0
Consumir webservice usando PHP a través de SSL

Buenas tardes, me atreví a recurrir a ustedes para solicitarles un consejo sobre como consumir un webservice usando PHP pasando a través de SSL
La situación es esta:
Tengo un foro de discusión que desarrollé con Vanilla Forums, e ingresé un Single Sign On para loggeo de usuarios de mi empresa; la situación es que el archivo que hace la autentificación luce de esta manera:
Código:
<?php 
require('functions.jsconnect.php');
require_once('webservice.php');

// 1. Get your client ID and secret here. These must match those in your jsConnect settings.
$clientID = "xxx";
$secret = "xxx";

// 2. Grab the current user from your session management system or database here.
$signedIn = true; // this is just a placeholder

// YOUR CODE HERE.

// 3. Fill in the user information in a way that Vanilla can understand.
$user = array();

if ($signedIn) {
// CHANGE THESE FOUR LINES. 
    $user['uniqueid'] = '123'; 
    $user['name'] = 'John PHP'; 
    $user['email'] = '[email protected]'; 
    $user['photourl'] = ''; 
AQUÍ SE SUPONE QUE QUIERO PONER EL LLAMADO DEL WEBSERVICE PORQUE AQUÍ ES EN DONDE EL PLUG IN TOMA EN CUENTA LA INFORMACIÓN Y HACE EL LOG IN
}

// 4. Generate the jsConnect string.
// This should be true unless you are testing. 
// You can also use a hash name like md5, sha1 etc which must be the name as the connection settings in Vanilla.
    $secure = 'sha1';
    WriteJsConnect($user, $_GET, $clientID, $secret, $secure);  // for full page forum
    JsSSOString($user, $clientID, $secret);  // add this line if using an embedded forum (remove if not embedded)

Después yo intenté consumir un webservice con PHP (Debido a que Vanilla Forums está sobre PHP) para hacer una consulta y que verifique el usuario que está loggeado en la página principal de la empresa (no en el foro, en la página principal que redirige al foro) y que traiga la información del usuario: Nómina, Nombre, Correo

Dicho código luce así:
Código:
<?php
require_once("lib/nusoap.php");
$cliente = new nusoap_client("https://oet.itesm.mx/portalOETWS/PortalOETWebService?wsdl");
// This is in the PHP file and sends a Javascript alert to the client
$message = "wrong answer";
echo "<script type='text/javascript'>alert('$message');</script>";

$usuario = "xxx";
$cveapp = "xxx";

$parametros = array ('pVusuarioenc'=>$usuario,'cveapp'=>$cveapp);
$cliente-> use_curl = TRUE;
$respuesta = $cliente->call("validausuario",$parametros);

echo $respuesta['pvatributo3Out']; <-- Nómina
echo $respuesta['pvatributo4Out']; <-- Nombre
echo $respuesta['pvatributo1Out']; <-- Apellido
echo $respuesta['pvatributo6Out']; <-- Correo
?>
Mi problema es este: Cuando yo intento ejecutar el llamado al webservice en localhost SÍ me trae mi información aunado a la alerta que pueden ver ahí, pero cuando intento ejecutar el mismo archivo webservice.php dentro de mi servidor, SÓLO me ejecuta la alerta y el llamado al webservice no.
Investigando un poco encontré que mi webservice (https://oet.itesm.mx/portalOETWS/PortalOETWebService?wsdl) tiene SSL y eso interfiere con single sign on

Alguien sabe cómo consumir un webservice a través de un SSL?
  #2 (permalink)  
Antiguo 19/08/2016, 15:30
 
Fecha de Ingreso: abril-2006
Mensajes: 583
Antigüedad: 18 años, 6 meses
Puntos: 120
Respuesta: Consumir webservice usando PHP a través de SSL

puede que la libreria "lib/nusoap.php" tenga requisitos extras que tu lcoalhost cumple pero que tu server no cumple, fijate primero la version de PHP que usas en tu localhsot y en tu server, luego verifica en tu server si tienes habilitadas las extensiones php_openssl que es la encargada de trabajar con las envolturas https ftps y otros

Etiquetas: consumir, ssl, usando, usuarios, webservice
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 21:54.