我有一台使用HTTP基本身份验证的服务器,同时我也有一个客户端脚本,知道上述HTTP服务器的用户名和密码。我使用XHR
请求,并使用其setRequestHeader
方法来设置授权头,这样可以避免浏览器弹出默认的HTTP登录对话框。
request.setRequestHeader('Authorization', authInfo);
这是 AJAX 请求的正常情况,但如果我想从所提到的服务器下载文件,并且被迫不使用 AJAX,而是使用类似 JavaScript 中的
window.location.href
这样的东西,其中浏览器自己创建请求。由于此请求将不包括 Authorization 头部(浏览器会为每个请求自动添加Authorization头部,仅在提示登录对话框并保存实际服务器的登录信息的base64后才这样做),浏览器将提示HTTP登录对话框,而我想避免这种情况。那么有没有一种方法可以设置浏览器创建的非 AJAX 请求的头部呢?