elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Problema con SOAP y PHP
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con SOAP y PHP  (Leído 5,083 veces)
WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.606


Sin conocimiento no hay espíritu


Ver Perfil WWW
Problema con SOAP y PHP
« en: 17 Julio 2012, 23:48 pm »

Alguien sabe que rechingados sucede con este código?

Código
  1. ini_set('soap.wsdl_cache_enabled', 0);
  2. $client = new SoapClient('http://www.test/test?wsdl', array(
  3. 'soap_version' => SOAP_1_2,
  4. 'cache_wsdl' => WSDL_CACHE_NONE,
  5. //'exceptions' => 0
  6. ));
  7. $result = $client->ValidaRut(array(
  8. 'rut' => 10000000,
  9. 'dv' => '3',
  10. 'cup' => '',
  11. 'ipserver' => '',
  12. 'ipcliente' => ''
  13. ));

Esto me daba cuando le ponía SOAP_1_1:
Citar
Fatal error: Uncaught SoapFault exception: [HTTP] Cannot process the message because the content type 'text/xml; charset=utf-8' was not the expected type 'application/soap+xml; charset=utf-8'. in /home/test.php:1 Stack trace: #0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'http://www...', 'http://www...', 1, 0) #1 /home/test.php(1): SoapClient->__call('test', Array) #2 /home/test.php(1): SoapClient->ValidaRut(Array) #3 /home/test.php on line 67

Pero al cambiar a la 1_2 me sale igual un error:
Citar
Fatal error: Uncaught SoapFault exception: [HTTP] Error Fetching http headers in ...

Cambié las rutas pero el código es ese. Que podrá ser? Instalé SOAP con easyapache desde WHM, luego recompilé php con --soap-enabled y la clase me funciona pero hay algo que al parecer no anda.

Por lo que averigué el primer errror era causado porque el rotocolo 1.1 enviaba el contenido via text/xml pero desde la 2.2 es application/soap+xml, pero bueno, cambié la version del protocolo a 1.2 pero ahora me sale un error en el header :-/ que podré hacer?

Gracias :)

PD: Acá les dejo un DUMP para mayor info:
Código:
print_r($client->__getFunctions());
Array
(
    [1] => ValidaRutResponse ValidaRut(ValidaRut $parameters)
)

print_r($client->__getTypes());
[0] => struct ValidaRut {
 double rut;
 string dv;
 string cup;
 string ipserver;
 string ipcliente;
}
    [1] => struct ValidaRutResponse {
 boolean ValidaRutResult;
}
    [4] => int char
    [5] => duration duration
    [6] => string guid
)


« Última modificación: 17 Julio 2012, 23:50 pm por WHK » En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.606


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Problema con SOAP y PHP
« Respuesta #1 en: 20 Julio 2012, 21:38 pm »

Encontré el problema, le hize print_r($client) y pude ver la última petición por parte de la librería hacia el servidor y al intentar hacerlo desde la consola con netcat me di cuenta que era el servidor el que no enviaba correctamente las cabeceras.

Saludos.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema BlueZScanner y problema de conexión
Hacking Mobile
Kasswed 3 6,675 Último mensaje 6 Mayo 2006, 22:04 pm
por Gospel
Llamada a WebService mediante SOAP
PHP
|Miguel| 3 6,305 Último mensaje 10 Junio 2012, 12:13 pm
por |Miguel|
Capturar petición y respuesta XML de SOAP con CXF
Java
alberto2 0 2,393 Último mensaje 22 Febrero 2016, 21:10 pm
por alberto2
llenar spinner con webservice soap
Programación General
hades645 0 2,162 Último mensaje 21 Mayo 2019, 00:23 am
por hades645
soap generico
Programación Visual Basic
adla 2 2,253 Último mensaje 19 Diciembre 2020, 08:24 am
por BlackZeroX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines