Mod注:这个问题是关于为什么
XMLHttpRequest
/fetch
/ etc。在浏览器上受相同访问策略限制(您会收到提及 CORB 或 CORS 的错误),而 Postman 则不受此限制。这个问题不是关于如何解决“No 'Access-Control-Allow-Origin'...”错误。这是关于它们发生的原因。
请停止发帖:
- 阳光下每种语言/框架的 CORS 配置。而是找到您相关的语言/框架问题。
- 允许请求绕过 CORS 的第 3 方服务
- 用于关闭各种浏览器的 CORS 的命令行选项
我试图通过连接到RESTful API内置Flask来使用JavaScript进行授权。但是,当我提出请求时,出现以下错误:
XMLHttpRequest 无法加载 http://myApiUrl/login。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问 Origin 'null'。
我知道 API 或远程资源必须设置标头,但是为什么当我通过 Chrome 扩展Postman发出请求时它起作用了?
这是请求代码:
$.ajax({
type: "POST",
dataType: 'text',
url: api,
username: 'user',
password: 'pass',
crossDomain : true,
xhrFields: {
withCredentials: true
}
})
.done(function( data ) {
console.log("done");
})
.fail( function(xhr, textStatus, errorThrown) {
alert(xhr.responseText);
alert(textStatus);
});