离子问题没有'Access-Control-Allow-Origin'

bak*_*rim 9 ionic-framework ionic2

我正在研究离子应用程序.我的问题是:当我尝试从服务器获取数据时我得到了这个:

XMLHttpRequest无法加载https://mywebsite.com/api.请求的资源上不存在"Access-Control-Allow-Origin"标头.原产地" :HTTP //本地主机,因此"是不允许访问.

我已经尝试将其添加到.htaccess:Header set Access-Control-Allow-Origin:*

这到我的api页面(PHP):header('Access-Control-Allow-Origin:*');

但仍然没有工作

$ http.get(url).success(function(response){...}

Aru*_*rul 18

把它放在你的PHP文件之上,如:

<?php
header("Access-Control-Allow-Origin: *");
// then your stuff goes here

?>
Run Code Online (Sandbox Code Playgroud)

注意:与PHP头函数的所有使用一样,这必须在从服务器发送任何输出之前.


mis*_*130 11

这个角色问题在离子方面有一个简单的工作.

转到你的ionic.config.json(以前的ionic.project)并添加代理例如:

{
  "name": "proxy-example",
  "app_id": "",
  "proxies": [
    {
      "path": "/api",
      "proxyUrl": "http://cors.api.com/api"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

之后,当你打电话给api时,请使用"/ api /"而不是" https://mywebsite.com/api ".

欲了解更多信息:

http://blog.ionic.io/handling-cors-issues-in-ionic/