使用CORS API响应需要发送什么?

问题描述 投票:0回答:1

我有一个内置在云上的Java / Spring内置的API,最近在网站无法使用时遇到了CORS问题。我发现我的API不支持CORS。这就是我解决问题的方法:

https://spring.io/guides/gs/rest-service-cors/(在页面上搜索“启用CORS”)

只需添加@CrossOrigin注释,它将:

在其响应中包含CORS访问控制头

这似乎最初解决了我的问题。但是,由于我没有参与解决这个问题(我只需添加注释),我显然有一些困惑。出现更多问题。我在检查我的回答时注意到我有getAllResponseHeadersgetResponseHeader的空值。所以我的CORS响应没有发回任何标题。

问题:

在什么情况下我需要发回响应头?阅读完Spring文档后,我通过使用@CrossOrigin注释默认接受所有来源。这意味着我的API应该接受来自所有外部资源的请求。但显然这是因为React“获取”请求失败了。从我正在进行的研究中,我想我可能需要发回一个标题,但我不知道为什么/何时需要这样做。

为什么Postman能够绕过CORS问题?甚至在我启用CORS服务器端之前,通过Postman的请求按预期工作。

java spring api cors
1个回答
0
投票

因为Postman在没有任何CORS政策的情况下通过Http。它不需要任何政策。见here。并且,可能的that会有所帮助。

更新,请原谅。我仔细阅读了那篇文章,现在我不明白你的问题。首先,CORS只能过滤,您不会发送任何有关此信息的响应。此外,您可以像标题一样发送有关您的政策的信息。请阅读thatthat。如果我不对,请纠正我

© www.soinside.com 2019 - 2024. All rights reserved.