Почему не работает мой POST XMLHttpRequest.Send? - PullRequest
0 голосов
/ 04 июля 2019

У меня проблемы с правильной настройкой моего объекта XMLHttpRequest для передачи данных POST на сервер.Данные (из HTML-формы) никогда не публикуются, или, по крайней мере, readyState == 4 && status никогда не достигаются.

    function PostToAPI() {

        var payersName = document.forms["myForm"]["payersName"].value;  
        var recipientPhoneNumber = document.forms["myForm"]["recipientPhoneNumber"].value;
        var apiKey = document.forms["myForm"]["apiKey"].value;  

        var params = "payersName="+payersName+
                     "&recipientPhoneNumber="+recipientPhoneNumber+  
                     "&apiKey="+apiKey;         

        alert(params);  // Note#1

        var Url = "https://api.blackShawls.af/c2b"; // Note#2
        var xhr = new XMLHttpRequest();
        xhr.open('POST', Url, true);
        xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');

        xhr.onreadystatechange = processRequest;

        function processRequest(e) {
            if (xhr.readyState == 4 && xhr.status == 200)  {
                alert(xhr.responseText.headers.Host); // Note#3
            }
        }

        xhr.send(params);

    }

Примечания

  1. (Примечание # 1) Это предупреждение дает следующий результат:
    the result shown from this alert

    Это говорит о том, что различные поля из HTMLформа была успешно прочитана, и что на данный момент все работает отлично.

  2. (Примечание # 2) Значение Url здесь вымышленное, в отличие отодному в моем коде.

  3. (Примечание № 3) Кажется, что alert(xhr.responseText.headers.Host); никогда не запускается, предполагая, что условия readyState и status никогда не выполняются.

    Или может быть, что xhr.send(params) никогда не отправляется?

Может кто-то любезно указать, где я ошибаюсь в своем коде?

С нетерпением жду вашей помощи.

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