XmlHttpRequest не работает, говоря, что модуль не определен - PullRequest
0 голосов
/ 22 февраля 2020

У меня есть приложение, в котором я использую AWS Cognito для аутентификации, я создал

  • Страница входа в систему HTML
  • На той же странице внутри я получил все временные учетные данные
  • Используя эти учетные данные, я пытаюсь создать URL-адрес для AWS Консоли управления, но у меня возникают некоторые проблемы

    var signin_url = "https://signin.aws.amazon.com/federation";
    
    var sessionTokenJSON = {
                    sessionId : 'someValue',
                    sessionKey : 'someValue',
                    sessionToken : 'someValue'
                };
    
    
     var sessionTokenString = JSON.stringify(sessionTokenJSON);
                var encodedSessionToken = encodeURIComponent(sessionTokenString);
    
       var signInURL = signin_url+"?Action=getSigninToken&Session="+encodedSessionToken;
    console.log(signInURL);
    

До вот этого работает нормально. Далее я должен получить SignInToken, отправив запрос на получение по указанному выше URL-адресу, чей ответ будет таким:

 {
   "SigninToken":"VsPfcblaC....."
    }

Я не могу выполнить этот вызов, то, что я пытаюсь, это

      var xmlHttp = new XMLHttpRequest();
                xmlHttp.open( "GET", signInURL, false );
                xmlHttp.send( null );
                var result =  xmlHttp.responseText;
                result = JSON.parse(result);

В нем говорится, что модуль XMLHttpRequest не определен, я видел много статей, но он не работал для меня. Может кто-нибудь подсказать, как поступить дальше, я ничего не запускаю на сервере, я разместил это приложение на S3 Bucket.

1 Ответ

1 голос
/ 22 февраля 2020

Мне кажется, что вы запускаете запрос на сервере. XMLHttpRequest недоступен в Node по умолчанию, но в браузерах это так.

Вы можете попробовать:

  1. Используя встроенную библиотеку Node: https://nodejs.org/api/http.html

Или: Добавить его на сервер
npm install xmlhttprequest
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;

Или: установите сторонний инструмент, например Rx JS или Ax ios
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...