Spring Cloud Config解析Gateway全局CORS配置失败求助
解决方案
问题根源
Spring Cloud Config解析YAML配置时,会把方括号[]识别为数组/集合的语法标识,导致[/**]这个路径匹配规则被误判为请求方法相关的非法格式,进而抛出IllegalArgumentException。
具体修复方法
方法1:转义方括号
在Git仓库的网关配置文件中,给方括号添加转义符,让Config服务器将其解析为字符串形式的路径规则:
spring: cloud: gateway: globalcors: cors-configurations: '\[/**\]': allowedOrigins: "*" allowedMethods: "*" allowedHeaders: "*"
方法2:用引号包裹路径规则
使用YAML的字符串引号(单引号或双引号)包裹[/**],明确指定这是一个字符串键名,避免解析错误:
spring: cloud: gateway: globalcors: cors-configurations: "[/**]": allowedOrigins: "*" allowedMethods: "*" allowedHeaders: "*"
验证步骤
- 提交修改后的配置到Git仓库
- 重启Spring Cloud Config服务器,确认控制台不再抛出异常
- 重启网关服务,测试跨域请求是否正常生效
内容的提问来源于stack exchange,提问作者Homayoun Behzadian
相关产品推荐
相关产品推荐

