如何使用Firebase托管的webapp获取没有CORS标头的外部数据?

时间:2017-03-21 19:38:10

标签: angular firebase ionic-framework cors firebase-hosting

我在Firebase上托管了我的Ionic2应用。我需要的是从API服务获取外部数据

  

请求时没有'Access-Control-Allow-Origin'标头   资源

我可以使用 ionic.config.json 文件中的代理在本地解决这个问题:

"proxies": [
{
"path":"/api",
"proxyUrl": "https://api.somwhere.com/"
}
]

但是在将我的应用部署到Firebase后,我不知道如何处理这个问题。这有可能吗?

3 个答案:

答案 0 :(得分:2)

firebase.json中的Firebase docs have an example of setting the Access-Control-Allow-Origin允许跨域请求字体文件。您可以像这样调整:

"headers": [ {
  "source" : "**",
  "headers" : [ {
    "key" : "Access-Control-Allow-Origin",
    "value" : "*"
  } ]
}

这将允许所有资源的跨源请求。当然,如果您想将其限制为特定资源,可以调整source值。

答案 1 :(得分:1)

这可能不是与firebase相关的问题。您的api需要在标头中发送CORS。接受所有(*)或您的特定firebase托管应用。 轻松修复.net中编写的API 请参见链接https://docs.microsoft.com/en-us/aspnet/web-api/overview/security/enabling-cross-origin-requests-in-web-api

答案 2 :(得分:0)

    标头集访问控制允许来源“ *”  在服务器上添加htaccess文件可以解决我的问题