Angular 4:使用 ionic 3 angular 4 Post 上的 CORS 问题

Angular 4: CORS Issue on Post using ionic 3 angular 4

我非常感谢社区提供的指导。因此,我想问一个问题,请注意,我已经用尽了所有资源 Google 来找出问题的解决方案:

Front-End: 使用ionic3 angular 4

Back-End:使用Laravel 5.4

目前我们已经尝试过的:

前端:

后端:

问题:

XMLHttpRequest cannot load

http://52.76.26.109/beacon/public/api/phonebook/create. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access.

任何宝贵的意见将不胜感激。谢谢

补充:我忘了提及通过 http 的 GET 请求有效,而 POST 无效。

您只会从浏览器中收到此错误。使用浏览器时 Cordova 插件被禁用,因此在浏览器上测试时白名单插件将被禁用。当您进行构建并将其安装在您的手机上时,它将开始工作。如果您想从浏览器测试 API。您应该安装 CORS plugin 并启用它。然后,您的 http 请求将通过。您不需要使用 JSONP 请求。您可以只使用普通的 http 请求

您的问题是由 CORS 引起的。

简单的解决方案是在您的 Laravel 项目中添加 CORS(Cross-Origin 资源共享)headers 支持。

我建议你使用这个包:laravel-cors

如果您已经为您添加了 header laravel project.Then,您应该仔细检查那些 header 并确保添加了 header。

如果您添加正确,响应 header 应该有一个项目 Access-Control-Allow-Origin:*