在PHP中构建Angular项目时如何解决CORS策略?

时间:2019-07-07 17:29:53

标签: javascript php angular

当我使用MySQL和PHP构建Angular项目时,我的浏览器控制台日志显示CORS header ‘access-control-allow-origin’丢失。

在我的浏览器中安装CORS扩展程序后,它可以正常工作。但是我想控制并在我的PHP代码中提供访问权限。如何编写我的代码来解决此问题?

2 个答案:

答案 0 :(得分:1)

您可以按照@Jithin所说的将其添加到您的php文件顶部。

header('Access-Control-Allow-Origin: *');

  

但是请记住,除非您通过*禁用CORS保护并指定所有来源来访问您的文件来指定特定来源。

因此最好按以下方式指定来源

header('Access-Control-Allow-Origin: https://www.test.com')

答案 1 :(得分:0)

我们在项目中遇到了同样的问题,在该项目中,我们放弃了为浏览器使用CORS扩展程序,这既不安全,也不总是有效。

相反,我们使用了角度CLI的内置代理配置将所有呼叫重新路由到远程位置。

我们这样做的

A)创建proxy-config.json文件(请参见https://stackoverflow.com/a/39715785

B),然后使用以下命令使用angular CLI运行项目: ng serve --proxy-config proxy.conf.json

通过这种方式,您可以欺骗浏览器以“思考”您正在从同一位置访问数据,即使您并非如此。另外,避免使用可能有害的浏览器扩展。