我读过很多关于预检和CORS的答案,所以请不要发布引用我应该阅读的链接。许多答案都是从服务器角度来看的,但在这种情况下我是客户。我是否设置了原始标题?我的假设是,这是一个简单的要求,对吗?如何将基本身份验证标头分配给XMLHTTPREQUEST?
req.open("POST", url, true);
req.setRequestHeader('Content-Type', 'application/blahblah');
req.setRequestHeader('Accept', 'application/blahblah');
req.setRequestHeader("Authorization", "Basic " + btoa(user + ":" + pass));
req.send();
但它仍然没有工作,我的错误:
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. The response had HTTP status code 500.
req.setRequestHeader(“Authorization”,“Basic”+ Base64.encode(user +“:”+ pass))??这个功能来自哪里?一个外部库? – carrots
其实对不起,我添加了这个:'req.setRequestHeader(“Authorization”,“Basic”+ btoa(user +“:”+ pass));'它仍然不起作用 – carrots
window.btoa,而不仅仅是btoa –