首页 > 解决方案 > AJAX 响应未定义

问题描述

我已经检查了有关此主题的各种帖子,但我不明白为什么我仍然无法定义 responseText。返回的 json 应该看起来像 {"token": "ghargaeorigjaoregrjarjegijra[pgjpraejgprjgpkfp5p34i5483te8q9rut053"}

function getAuth(username, password) {

    let http = new XMLHttpRequest();
    let url, method;
    let data = {"username": username, "password": password};

    url = returnLocation("default");
    method = 'POST';

    http.open(method, "http://" + url + "/monitor/admin/auth/", true);
    http.setRequestHeader("Content-Type", "application/json");
    http.setRequestHeader("Accept", "application/json");
    http.send(JSON.stringify(data));

    http.onreadystatechange = function() {
        if (http.readyState === XMLHttpRequest.DONE && http.status === 200){
            setCookie(http.responseText);
        }
        else if (http.readyState === XMLHttpRequest.DONE && http.status !== 200){
            alert(http.statusText);
        }
    }
}

标签: javascriptajaxxmlhttprequest

解决方案


我使用了 http.response 而不是 http.ResponseText


推荐阅读