Esta es la primera vez que uso cualquier tipo de API y recién estoy comenzando en JS. Quiero obtener el estado de un servidor dentro de un panel de alojamiento del servidor, para hacer esto necesito iniciar sesión (API/Core/Login), obtener el valor de una clave llamada sessionID, luego enviar ese valor a /API/Core /GetUpdates para obtener una respuesta. Cuando intento pasar el ID de sesión a GetUpdates, envía undefined en lugar del ID de sesión, supongo que estoy haciendo algo mal al intentar hacer referencia al valor clave. Aquí está mi código:
var loginurl = "https://proxyforcors.workers.dev/?https://the.panel/API/ADSModule/Servers/83e9181/API/Core/Login"; var loginRequest = new XMLHttpRequest(); loginRequest.open("POST", loginurl); loginRequest.setRequestHeader("Accept", "text/javascript"); loginRequest.setRequestHeader("Content-Type", "application/json"); loginRequest.onreadystatechange = function() { if (loginRequest.readyState === 4) { console.log(loginRequest.status); console.log(loginRequest.responseText); } }; var logindata = '{"username":"API", "password":"password", "token":"", "rememberMe":"true"}'; loginRequest.send(logindata); var statusurl = "https://proxyforcors.workers.dev/?https://the.panel/API/ADSModule/Servers/83e9181/API/Core/GetUpdates"; var statusreq = new XMLHttpRequest(); statusreq.open("POST", statusurl); statusreq.setRequestHeader("Accept", "text/javascript"); statusreq.setRequestHeader("Content-Type", "application/json"); statusreq.onreadystatechange = function() { if (statusreq.readyState === 4) { console.log(statusreq.status); console.log(statusreq.responseText); } }; var statusdata = `{"SESSIONID":"${loginRequest.responseText.sessionID}"}`; // Line I'm having problems with statusreq.send(statusdata); console.log(loginRequest.responseText.sessionID)Aquí está la respuesta de /API/Core/Login
{"success":true,"permissions":[],"sessionID":"1d212b7a-a54d-4e91-abde-9e1f7b0e03f2","rememberMeToken":"5df7cf99-15f5-4e01-b804-6e33a65bd6d8","userInfo":{"ID":"034f33ba-3bca-47c7-922a-7a0e7bebd3fd","Username":"API","IsTwoFactorEnabled":false,"Disabled":false,"LastLogin":"\/Date(1639944571884)\/","GravatarHash":"8a5da52ed126447d359e70c05721a8aa","IsLDAPUser":false},"result":10}Cualquier ayuda sería muy apreciada, he estado atascado en esto por un tiempo.
responseText es la representación de texto de la respuesta JSON .
JSON.parse(logindata.responseText) para obtener los datos JSON o use logindata.responseJSON