如何获取具有给定URL和用户名和密码的响应

How to GET a response with a given URL and a username and password?

本文关键字:用户 URL 密码 响应 何获取 获取      更新时间:2023-09-26

我被要求从OLAP服务器加载下拉框,并给出服务器凭据。它们如下

  • li>HTTP方法- POST
  • 授权用户:abc123
  • authpwd: api123
  • REQ/RES内容类型/字符集= application/json;utf - 8字符集=
下面是我写的代码:
var hr = new XMLHttpRequest();
var url= "http://someIPAddress/getData";
alert("Before Posting data");
hr.open("POST",url,true);
alert("Connection open");
document.getElementById("submitButton").disabled = true;
document.getElementById("status").innerHTML = "Loading...";
hr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
hr.onreadystatechange = function(){
    alert("Entered callback function...");
    if(hr.readyState == 4 && hr.status == 200){
        var return_data = hr.responseText;
        alert(return_data);
    }
    else{
        alert("There is a connection issue");
        var return_data = hr.responseText;
    }
}
ajaxReq.send("POST",url,function populate(){
    alert("Request received");
})
}

这些是提供的确切数据(除了url、用户名和密码)。我不会在这里透露实际数据)

我试图通过指定URL, POST和回调函数来使用XMLHttpRequest()。如何在这里传递用户名和密码,以便它以data

响应您

当我尝试访问url时,它要求我输入用户名:和密码:

我不知道如何用url附加凭据,因为我没有指定值的确切密钥。你能帮帮我吗?我想我错过了一些东西

您需要发送一个Authorization头与请求。这个报头值由用户名后面的':'和密码组成,编码为base64:

hr.setRequestHeader('Authorization', 'Basic ' + btoa(username + ':' + password));

btoa()将字符串编码为base64

您是否尝试过像http://user:pass@someIPAddress/getData这样的URI,也许这就是您所需要的。我从来没有尝试过提交表单但是你可以检查