Access-Control-Allow-Origin请求存储文件



我收到错误

没有 'Access-Control-Allow-Origin' 标头在请求的资源上存在。Origin 'https://MY-Firebase-APP.Firebaseapp.com' 因此不允许访问。

从我的Firebase存储访问json文件时。下面是存储

的规则
service firebase.storage {
service firebase.storage {
  match /b/paystumped.appspot.com/o {
    match /{allPaths=**} {
      allow read, write: if true;
    }
  }
}

该应用程序也是由Firebase托管的。这是消防基地。当我运行'firebase deploy'

{
  "hosting": {
    "public": "dist",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "headers": [
      {
        "source": "**/*",
        "headers": [
          {
            "key": "Access-Control-Allow-Origin",
            "value": "*"
          }
        ]
      },
      {
        "source": "**/*.@(jpg|jpeg|gif|png)",
        "headers": [
          {
            "key": "Cache-Control",
            "value": "max-age=7200"
          }
        ]
      },
      {
        "source": "404.html",
        "headers": [
          {
            "key": "Cache-Control",
            "value": "max-age=300"
          }
        ]
      }
    ],
    "cleanUrls": true,
    "trailingSlash": false

}}

我确信有一些琐碎的CORS设置要做,使此工作

在阅读了CORS并理解了它应该如何工作之后,我在这里找到了所需的答案。https://stackoverflow.com/a/37765371/4360863

firebase存储策略是由google提供的实用程序配置的。

如果你在flutter web中遇到这个问题,只需运行额外的参数来渲染html,这将解决CROS问题。

flutter run -d chrome --web-renderer html

相关内容

  • 没有找到相关文章

最新更新