首页 > 解决方案 > Flutter web 无法从另一个域加载网络图像

问题描述

我无法通过 API 调用从其他域的 Flutter Web 中加载网络图像。收到此错误

试图从另一个域加载图像?在以下位置查找答案: https : //flutter.dev/docs/development/platform-integration/web-images ImageCodecException:无法加载网络图像。

有什么帮助吗?

标签: flutterflutter-web

解决方案


为了能够在 Flutter 网页上显示来自任何其他域或 Firebase 存储的图像,您必须为CORS配置数据。

  1. 打开GCP 控制台,选择您的项目并通过单击>_顶部导航栏中的图标按钮启动云终端会话。

  2. 单击打开编辑器按钮(铅笔图标),然后创建cors.json文件。

cors.json文件应如下所示:

[
  {
    "origin": ["*"],
    "method": ["GET"],
    "maxAgeSeconds": 3600
  }
]

我将原点设置为*这意味着每个网站都可以显示您的图像。但您也可以在此处插入您网站的域以限制访问。

  1. gsutil cors set cors.json gs://your-bucket

如果您需要更多信息:https ://cloud.google.com/storage/docs/configuring-cors


推荐阅读