如何在https

时间:2018-06-05 09:23:23

标签: javascript ajax post https

我正在尝试发出Ajax POST请求,但我一直收到404错误“GET https://www.test.com/login.aspx?ReturnUrl=%2fapi%2ftest%2fsave 404(Not Found)” 不知道是不是因为网站有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 :(得分:0)

发生的事情是您的后端/ API设置为需要身份验证,如果收到请求但未经身份验证,则会重定向到登录页面。您可以在错误响应中看到这一点:

“GET https://www.test.com/login.aspx ?ReturnUrl =%2fapi%2ftest%2fsave 404(Not Found)”

但另一个问题是你没有登录页面!这就解释了404 Not Found响应。

禁用API上的身份验证以进行测试,或者在Ajax请求中包含身份验证/凭据。