我正试图将请求从一个本地主机端口发送到另一个本地主机端口。我在前端使用angularjs,在后端使用node。
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, PATCH');
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, Authorization');
return {
getValues: $resource(endpoint + '/admin/getvalues', null, {
'get': {
method: 'GET',
headers:{'Authorization':'Bearer'+' '+ $localStorage.token}
}
}),
}
您还必须在允许的标题中添加选项。浏览器在发送原始请求之前发送飞行前请求。见下文
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');
来源https://developer.mozilla.org/en-美国/docs/web/http/methods/options
在CORS中,使用OPTIONS方法发送飞行前请求,这样服务器就可以响应是否可以使用这些参数发送请求。access-control-request-method
标头作为预飞行请求的一部分通知服务器,当发送实际请求时,将使用POST request方法发送该请求。access-control-request-headers
标头通知服务器,当发送实际请求时,将使用X-Pingother
和Content-type
自定义标头发送请求。服务器现在有机会确定它是否希望在这些情况下接受请求。
编辑的
您可以通过使用npmjs.com/package/cors npm包来避免这种手动配置。
问题内容: 我正在尝试从跨域制作登录页面,但无法解决问题,错误是: XMLHttpRequest无法加载http://localhost/testing/resp.php。在飞行前响应中,Access- Control-Allow-Headers不允许请求标头字段Access-Control-Allow-Headers。 我的Javascript代码是: http://localhost/test
请求头字段access-control-allow-headers本身在飞行前响应中是不允许的
问题内容: 我正在尝试使用发布请求将文件发送到服务器,但是在发送请求时会导致错误: Access-Control-Allow-Headers不允许请求标头字段Content-Type。 所以我搜索了错误并添加了标题: 然后我得到错误: Access-Control-Allow-Headers不允许请求标头字段Access-Control-Allow-Origin 所以我用谷歌搜索,唯一能找到的类似
我正在尝试将文件发送到我的服务器,并发送post请求,但当它发送时会导致错误: Access-Control-Allow-Headers不允许请求标头字段Content-Type。 所以我搜索了这个错误并添加了标题: 然后我得到错误:
问题内容: 我正在尝试将请求从一个本地主机端口发送到另一个本地主机端口。我 在前端 使用 angularjs,在后端 使用 node 。 由于这是 CORS 请求,因此在node.js中,我正在使用 在angular.js服务文件中,我正在使用 我收到以下错误 请求标头字段在飞行前响应中,Access-Control-Allow-Headers不允许授权。 请帮忙! 问题答案: 您还必须在允许的标
此外,客户机url http://localhost:8081被添加到KeeyCloak中的Web Origins中。不确定还缺少什么来让它工作。