gpt4 book ai didi

post - 跨源请求在 tomcat 8 中被阻止,HTTP 状态代码为 403

转载 作者:行者123 更新时间:2023-12-04 12:18:16 25 4
gpt4 key购买 nike

这似乎是一个已知问题,并且该主题存在许多问题,但是,我的情况很奇怪。我有一个部署在 tomcat 8.0.36 上的简单 Web 应用程序。我已经正确配置了 CORS:

<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

跨域请求被浏览器拦截:

请求的资源上不存在“Access-Control-Allow-Origin” header 。起源' https://www.mytestpage.com ' 因此不允许访问。响应具有 HTTP 状态代码 403。

在 tomcat 日志文件中,我还看到了 403 的响应代码。有趣的是,在跨域请求的情况下,我的应用程序的代码永远不会执行。请求在到达我的应用程序之前被阻止,并立即发送 403。我在 tomcat 前面没有 apache,它是普通的 tomcat。我尝试了很多事情,包括将来源列入白名单和指定允许的 header - 没有任何帮助。我还尝试以编程方式设置 header ,直到我发现在跨域请求的情况下永远不会执行代码。

UPD:端点接受 POST 请求。这些 POST 请求从 JS 代码段作为 XmlHttpRequests 发送。

任何想法它可以是什么?

p.s 我可以成功提出同源请求。

最佳答案

我发现了问题所在——我必须在请求中设置 Content-Type header ,否则请求将被阻止。 - Tomcat CORS filter

关于post - 跨源请求在 tomcat 8 中被阻止,HTTP 状态代码为 403,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38622709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com