这里我尝试使用iframe来显示网站,并且该网站在打开之前使用基本身份验证进行身份验证。基本的auth url类似于user:pass @ https://sample.com。
所以,当我把它放在像if <iframe src="user:pass@https://sample.com">
之类的iframe中时,它就无效了。
有没有办法在javascript(ajax)中为该特定网址设置基本的auth标头,然后只需打开https://sample.com而不用user:pass?
我找到了这个例子:
function NoCors() {
var username = "user";
var password = "pass";
var url = 'https://example.com/login';
$.ajax({
url: url,
success: function(json) {
alert("Success", json);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus, errorThrown);
},
beforeSend: function(xhr) {
xhr.setRequestHeader("Authorization", "Basic" + btoa(username + ":" + password));
},
type: 'GET',
contentType: 'json',
});
}
^^示例正常工作以设置auth标头,但我想setRequestHeader,只需用example.com打开url或将此url设置为iframe的src。