Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: alcatraz en 4 Junio 2012, 18:24 pm



Título: web service con Jquery
Publicado por: alcatraz en 4 Junio 2012, 18:24 pm
Hola, estoy haciendo una web de ejemplos para aprender un poquito de Jquery. Hasta ahora la cosa fue bastante bien, pero me he encontrado con un problema: Mi idea es hacer un cliente de un web service, en concreto este:

http://ovc.catastro.meh.es/ovcservweb/OVCSWLocalizacionRC/OVCCallejero.asmx?op=Consulta_DNPRC

pero siempre que hago la llamada obtengo un "undefined error" y ya no se por donde buscar el fallo.

Mi codigo es el siguiente:

Código:
function refCatastral()
{
    var wsUrl = "http://ovc.catastro.meh.es/ovcservweb/OVCSWLocalizacionRC/OVCCallejero.asmx";


    var soapRequest =
'<?xml version="1.0" encoding="utf-8"?>'+
'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"'+
    'xmlns:xsd="http://www.w3.org/2001/XMLSchema"'+
    'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'+
  '<soap:Body>'+
    '<Provincia xmlns="http://www.catastro.meh.es/">Madrid</Provincia>'+
    '<Municipio xmlns="http://www.catastro.meh.es/">Madrid</Municipio>'+
    '<RefCat xmlns="http://www.catastro.meh.es/">1749101VK4714H0001KW</RefCat>'+
  '</soap:Body>'+
'</soap:Envelope>';

    $.ajax({
        type: "POST",
        url: wsUrl,
        contentType: "text/xml; charset=\"utf-8\"",
        dataType: "xml",
        data: soapRequest,
        success: processSuccess,
        error: processError
    });
    alert(soapRequest);
}

function processSuccess(data, status, req) {
    alert(req);
}

function processError(data, status, req) {
    alert(req.responseText + " " + status);




¿Alguien sabe por donde puede estar fallando?

Un saludo. Gracias.


Título: Re: web service con Jquery
Publicado por: WarGhost en 4 Junio 2012, 18:29 pm
Por cuestiones de seguridad no se pueden hacer peticiones AJAX a direcciones remotas, salvo si el servidor remoto si acepte.

Tambien puede utilizar: JSONP.


Título: Re: web service con Jquery
Publicado por: [u]nsigned en 4 Junio 2012, 18:49 pm
JSONP no le va a servir. La razon es que ese WS devuelve la respuesta en formato SOAP (basado en xml), no en JSON.

Yo que o te recomendaria es que te crees un proxy local con php. Es decir un script en PHP que llame al webs ervice ese. Luego desde tu web con jQuery llamas al proxy (archivo local php) y asi no necesitas nada cross-domain.

Saludos


Título: Re: web service con Jquery
Publicado por: alcatraz en 4 Junio 2012, 19:27 pm
Muchas gracias por vuestras respuestas.

Un saludo.