Nha*_*lio 3 javascript basic-authentication
我想检查一个URL是否受到使用javascript的Http基本身份验证的保护.这是我到目前为止:
function showFailure(){ alert("FAILED ") }
function showSuccess(){ alert("SUCCESS") }
var myRequest = new Request({
url: 'http://localhost/access_protected_HTTP_BASIC',
method: 'get',
onSuccess: showSuccess,
onFailure: showFailure
}).send();
Run Code Online (Sandbox Code Playgroud)
但这实际上打开了浏览器登录弹出窗口以访问资源.有没有办法不触发弹出窗口?
谢谢!
注意:我在这个例子中使用mootools,但我会采取任何javascript示例,这样做:)
根据类似问题的答案,您可以在发送请求时手动传递用户名和密码.(根据MooTools Docs,user和password参数完全相同.)
此外,XMLHttpRequest规范说:
如果身份验证失败,则Authorization不在作者请求标头列表中,请求username为非null,请求密码为非null,用户代理不得提示最终用户输入用户名和密码.
这意味着您可以设置虚拟用户名和密码,浏览器不会提示用户.如果您返回401状态代码,则表示需要授权.