2017-03-07 6 views
0

J'essaye d'obtenir le fichier PDF dans la réponse en utilisant XMLHTTP et le poster la réponse en utilisant XMLHTTP obtenir. La partie fonctionne bien mais la partie Post ne reçoit pas la réponse.XMLHTTP Post ne fonctionne pas

var Req = new XMLHttpRequest(); 
Req.open("POST",'http://192.168.56.103/API/Twebservice.asmx/Updatepdf', false); 
Req.onload = function (oEvent) { 
    // Uploaded. 


var blob = function(){var xhr = new XMLHttpRequest() 
xhr.open("GET", "http://www.pdf995.com/samples/pdf.pdf",true); 
xhr.send(); 

if (xhr.status === 200) { 
var test=xhr.responseText;//console.log(test) 

}} } 
//GetPDF(); 
Req.send(blob()); 

J'espère que quelqu'un peut vous aider.

+1

'Req.send (blob());' n'a aucun sens. Vous êtes en train de faire 'Req.send (undefined);' Que pensez-vous que blob() fait? – epascarello

+0

C'était juste moi essayant mais je pense en raison de la nature asynchrone ... je ne peux pas obtenir le texte de réponse dans une variable – user1222256

+0

Ainsi vous faites l'appel après que vous récupériez les données, mais le problème que vous rencontrerez dans votre code est identique politique d'origine – epascarello

Répondre

0

Traitez l'appel comme asynchrone. Appelez le second après que le premier a été fait.

function firstCall() { 
    var xhr = new XMLHttpRequest() 
    xhr.open("GET", "path1", true); 
    xhr.onload = function() { 
    secondCall(xhr.responseText); 
    }; 
    xhr.onerror = function() { 
     console.error("Error", xhr.statusText); 
    }; 
    xhr.send(); 
} 

function secondCall(data) { 
    var xhr = new XMLHttpRequest() 
    xhr.open("POST", "path2", true); 
    xhr.onload = function() { 
    console.log("done");  
    }; 
    xhr.onerror = function() { 
     console.error("Error", xhr.statusText); 
    }; 
    xhr.send(data); 
} 
+0

Merci Epascarello ... qui l'a réparé. Maintenant, je sais où je me trompais. – user1222256