2016-06-02 15 views
0

Ich versuche einen Restanruf an einen oAuth-Server zu machen, um ein Token zu erhalten, das als Eingabe für meinen Jasmine-Test dient. Nun nahm ich an, dass ich das mit XMLHttpRequest machen könnte.Jasmine-Protractor Rest Anruf

Aber wenn ich den Test ausführen bekomme ich eine Fehlermeldung,

"Message:Failed: XMLHttpRequest is not defined" ReferenceError: XMLHttpRequest is not defined

Dies ist für den Teil des Codes, der Fehler aus var xhr = new XMLHttpRequest();

Jede Idee, was falsch hier los ist, oder gibt es eine bessere Weg, dies zu tun? Ich sehe eine Menge Artikel, die über XMLHttpRequest im Zusammenhang mit Mock-Objekten sprechen, aber ich versuche nicht, mich darüber lustig zu machen, denn ich brauche ein Token, das vom Server zurückgegeben wird.

Der Code verwende ich hier ->

var data = "someData"; 
    var xhr = new XMLHttpRequest(); 
    xhr.withCredentials = true; 
    xhr.setRequestHeader('Authorization', 'someAuth'); 
    xhr.setRequestHeader('Content-Type', '*/*'); 
    xhr.open("POST", url); 
    xhr.send(data); 

Jede Hilfe würde geschätzt.

Antwort

0

dachte ich dies zwei Gründe haben könnte passieren:

  1. Sie haben XMLHttp nicht installiert, die Knotenpaketmanager mit dem folgenden Befehl durchgeführt werden kann:

    npm install xmlhttprequest 
    

Mehr Details hier ->XMLHTTP INSTALL LINK

  1. Wenn Sie xmlhttprequest bereits installiert haben, liegt das Problem möglicherweise daran, dass der Editor die Umgebungsvariablen nicht abrufen kann. Das war mir passiert, als ich auf dieses Problem stieß. Ich benutzte WebStorm auf dem Mac, der die Umgebungsvariablen von meinem System nicht verwenden würde. Um dies zu umgehen, habe ich den Editor von Terminal gestartet und dann wurde xmlhttpRequest in meinem Code erkannt.
Verwandte Themen