Ionic2项目在localhost上使用Apache PHP REST服务

时间:2017-05-22 10:02:59

标签: apache rest angular ionic2 cors

我有一个PHP REST服务和一个开箱即用的Ionic2项目'在Node.js localhost:8100上运行。 REST服务在我的计算机上运行localhost:80。当我想在Ihost2(Angular2)上调用localhost上的服务器时,我在浏览器控制台中收到此错误:

XMLHttpRequest cannot load http://localhost/app_dev.php/login. 
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. 
The response had HTTP status code 404.

Wat我理解这是一个CORS问题(跨域资源共享)。据我所知,解决这个问题的方法是将ionic中的构建脚本更改为指向Apache项目中的前端分发位置,并从localhost:80运行整个项目。另一个解决方案是更改“访问控制 - 允许 - 来源”和“访问控制 - 允许 - 来源”。头。

  • 这个问题最直接的解决方案是什么?

1 个答案:

答案 0 :(得分:1)

检查了可能的重复项,并且我希望添加更多详细信息 ANSWER

由于您正在处理PHP,因此只需在您的php脚本上添加以下内容,以下内容对我有用:

<?php 

   header('Access-Control-Allow-Origin: *'); // this!
   header('Access-Control-Allow-Headers: Content-Type'); // and this!
   //more code here

?>

在开发过程中,您可能需要在浏览器中启用CORS,这是 CHROME

的扩展名

希望这有帮助! :)