Javascript XMLHttpRequest.Open()不发送凭据?

时间:2012-05-23 11:51:24

标签: javascript xmlhttprequest basic-authentication

我的任务是修复其他人编写的一些JS代码中的问题,这是我第一次使用该语言,所以我可能会遗漏一些关键的东西。

最初的问题是我们向服务器发送了一个带有视频源请求的URL的页面,但该请求是在基本身份验证中没有用户/ pwd的情况下发送的,这是服务器所期望的。

要解决此问题,我正在尝试使用XMLHttpRequest,并将凭据提供给Open()方法,如下所示:

var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", res, true, "admin", "admin");
xmlHttp.withCredentials = "true"; 
xmlHttp.send(null);

但是,我在服务器端获得的是一个没有基本身份验证标头的请求。据我所知,XMLHttpRequest()发出的第一个请求不会发送凭据,只有在服务器向浏览器提出401错误的情况下才会进行第二次尝试。我看到的是,如果我不在open()调用中包含凭据,我只会按预期获得1次调用(失败)。当我包含凭据时,我确实得到了第二个呼叫,但它与第一​​个呼叫完全相同 - 没有基本认证头。

我做错了什么?

0 个答案:

没有答案