首页 > 解决方案 > 在 wildFly 10 上部署时,无法从 Angular 5 访问 POST 休息服务

问题描述

使用 Spring boot 实现并使用 Spring security 保护的 Rest 服务部署在 wildFly 10 上。Angular 应用程序位于 NodeJS 上。

该应用程序在部署在 Tomcat 上时可以工作。在 Wildfly 上部署时,获取服务正在运行,但发布后出现错误

“403 禁止” “在请求参数 '_csrf' 或标头 'X-XSRF-TOKEN' 上发现无效的 CSRF 令牌 'null'”

当我们从邮递员设置 X-XSRF-TOKEN 用于邮政服务时,它可以工作,但是从角度“X-XSRF-TOKEN”没有作为请求标头传递。并且请求中的服务器 cookie 值为 null。

尝试了以下选项,但仍然面临同样的问题
1. CookieXSRFStrategy, httpClientXSRFModule 显式设置 Header ,但我们将令牌设为 null
2. 独立修改以启用 CORS
3. 在 spring boot 配置文件属性集中:server.servlet.session.tracking-模式=cookie
4. Proxy.config.json 角度

技术: 1. Spring boot 1.5/ Spring Security
2. Angular 5
2. WildFly 10

认证请求:

用户登录请求

发布请求

标签: angularspring-bootspring-securitywildfly-10

解决方案


在我的项目中遇到同样的问题...当添加 proxy.config.json 时,它要求为每个请求提供凭据...因为为每个请求设置了新的 cookie


推荐阅读