Signaler

L'appel d'un web service retourne une chaine vide

Posez votre question romulus001 12Messages postés dimanche 2 mars 2014Date d'inscription 15 septembre 2017 Dernière intervention
Bonjour à vous tous,

Je développe une application web à l'aide de Ionic et je rencontre des soucis pour consommer un web service en local sur ma machine, ce web service possède une wsdl.

Voici ce que j'ai fait :
function soapRequest(){
let jeton='contenu de ma clé token qui fait 500 caractères';
let return_value= '<?xml version="1.0" encoding="UTF-8"?>'+
'<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">'+
'<SOAP-ENV:Header/>'+
'<SOAP-ENV:Body>'+
'<ns1:LocalServiceLoginToken xmlns:ns1="http://www.sage.com/fr/line1000/Sage1000Authentication">'+
'<ns1:token>'+jeton+'</ns1:token>'+
'</ns1:LocalServiceLoginToken>'+
'</SOAP-ENV:Body>'+
'</SOAP-ENV:Envelope>';

return return_value;
}

function readBody(xhr) {
let data;
if (!xhr.responseType || xhr.responseType === "text") {
data = xhr.responseText;
} else if (xhr.responseType === "document") {
data = xhr.responseXML;
} else {
//data = xhr.response;
data = xhr.responseText;
}
return data;
}

function Autentication_get_sessionId() {
//ne sachant pas laquelle des 2 adresses est la bonne, je les met dans 2 variables différents et j'échange les numéros dans mes tests
let url_autentication2='http://win-9u040a2kpbv:83/adelerh/server/soap.l1000?wsdl=Sage1000Authentication';
let url_autentication1='http://win-9u040a2kpbv:83/adelerh/server/soap.l1000';


let xmlhttp = new XMLHttpRequest();
xmlhttp.open('POST', url_autentication1, true);

xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4) {
alert(readBody(xmlhttp));
}
}
// Send the POST request
xmlhttp.setRequestHeader('Content-Type', 'text/xml');
xmlhttp.send(soapRequest());
}


Auriez-vous une idée de résolution?

Merci

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !