繁体   English   中英

Chrome的HTTP BASIC身份验证注销问题

[英]HTTP BASIC Authentication logout issue with Chrome

我使用以下方法从使用基本HTTP身份验证的HTTP服务器注销。 这适用于IE和FireFox。 但是对于Chrome,我甚至可以使用错误的用户名和密码来获取html文件。

在Chrome中,流程是,我收到“**********失败***********”错误,然后显示请求的页面(some_server_file.html)。

但是在IE / Chrome中,流程是,我得到“**********失败***********”错误,然后登录对话框提示输入凭证。

无论如何,即使第一次请求失败并且凭据错误,Chrome也会发送正确的用户名和密码。

任何人都可以修复Chrome问题吗?

function logout() {
    jQuery.ajax({
            type: "get",
            url: "some_server_file.html",
            async: false,
            username: "wronguser",
            password: "wrongpass",
            headers: {"Authorization": "Basic xxx"}
        })
        .success(function () {
            console.log("********** Success ***********");
        })
        .fail(function () {
            console.log("********** Failed ***********");
        });
    return false;
}

谢谢

基本身份验证不是为了管理注销而设计的。

如果您希望能够注销用户,则可以在服务器上创建一个返回HTTP 403 (禁止)状态代码的端点。 这将触发浏览器“注销”/清除基本身份验证缓存。

User clicks logout button --> 
Ajax call to /logout which will return HTTP 403 --> 
Browser basic authentication cache will be cleared

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM