Как отправить Ajax POST запрос на https - PullRequest
0 голосов
/ 05 июня 2018

Я пытаюсь сделать запрос Ajax POST, но получаю сообщение об ошибке 404 "GET https://www.test.com/login.aspx?ReturnUrl=%2fapi%2ftest%2fsave 404 (не найдено)" Не знаю, так ли это, потому что на сайте есть https?

Это код, который я использовал:

var params = { name: "Test"};
var xhr = new XMLHttpRequest();
xhr.open('POST', 'https://www.test.com/api/test/save', true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhr.status === 200) {
        response = JSON.parse(xhr.responseText);
        console.log(reponse);
    }

};
xhr.send(JSON.stringify(params));

Есть предложения о том, как заставить это работать?

1 Ответ

0 голосов
/ 05 июня 2018

Что происходит, так это то, что ваш бэкэнд / API настроен на требование аутентификации, и если запрос получен без аутентификации, он перенаправляется на страницу входа.Вы можете увидеть это в своем сообщении об ошибке:

"GET https://www.test.com/login.aspx?ReturnUrl=%2fapi%2ftest%2fsave 404 (не найдено)"

Но другая проблема заключается в том, что у вас нетстраница авторизации!Это объясняет ответ 404. Not Found.

Либо отключите аутентификацию в своем API для тестирования, либо включите аутентификацию / учетные данные в свой запрос Ajax.

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