好的,我有这个symfony项目,它使用两个不同的端口,
[客户] http://localhost:8080和[服务器] 127.0.0.1:3000。
很明显我得到了CORS错误,经过一些研究后我发现了Nelio CorsBundle for Symfony。但是,我指定的选项仅应用于OPTIONS / preflight请求,GET或POST保持不包含此捆绑包中的任何标头。这是我的设置:
nelmio_cors:
defaults:
origin-regex: true
allow_origin: ["^http://localhost:[0-9]+"]
allow_methods: ["POST", "PUT", "GET", "DELETE", "OPTIONS"]
allow_credentials: true
allow_headers: ["Content-Type", "authorization", "x-api-token", "cache-control", "x-requested-with"]
expose_headers: ["link"]
max_age: 3600
paths:
'^/': ~
并且OPTIONS请求它在事先处理之前完成,并且应用了所有给定的设置,但是后面的请求在控制台中显示以下错误:
Cross-Origin Request Blocked: (Reason: CORS header 'Access-Control-Allow-Origin' missing
在查看请求时,确实没有标题存在。有人知道为什么会这样吗?提前谢谢!
答案 0 :(得分:0)
<强>解决强>
我是个白痴;这些要求仍然进入各自的行动,我发现这些行为很特殊。但是,由于我发送的参数不在请求中,但它们在我的请求参数中,我认为这是由于缺少原始标题。为什么这些标题丢失了?我有一个死;在我的控制器中,我不知道删除了标题。我的参数丢失的原因完全不同。
所以,我的疏忽。