我搜索了高低,并尝试了几种解决方案但我无法弄清楚这一点 . 我在当地工作(MAMP) .
我有两个本地服务器,一个Angular前端服务器和一个Laravel服务器来处理请求并将数据CRUD回到Angular .
从Laravel服务器获取数据没有问题,当我尝试创建,更新或删除操作来更新服务器时,我不断收到CORS错误(原因:缺少CORS Headers 'Access-Control-Allow-Origin') . 我在.htaccess文件中设置了以下指令:
Header add Access-Control-Allow-Origin: *
Header add Access-Control-Allow-Methods: GET,POST,OPTIONS,DELETE,PUT
Header add Access-Control-Allow-Headers: Content-Type
我试图实现这些解决方案,将Laravel的CORS头响应添加到我的项目中,但我仍然没有取得任何成功:
https://github.com/barryvdh/laravel-cors
https://github.com/spatie/laravel-cors
我希望有人遇到过类似的问题,可以提供帮助 .
3 回答
这个barryvdh cors配置应该允许你允许一切
还要检查chrome dev工具网络部分中的服务器响应 . 确保已设置标头 .
这是在客户端发生的错误,因为服务器没有使用正确的CORS值进行响应 . .htaccess文件看起来没问题,但是在Laravel后端尝试使用PHP添加标头 . 查看更多here .
如果您需要为所有 endpoints 使用此功能,请考虑使用中间件 .
Edit: 我认为问题也可能出在你的允许 Headers 中 . 尝试将原点添加到允许的 Headers 中
我一定搞砸了BarryVDH CORS软件包的实现,因为在摆弄它之后它就解决了这个问题 .