如何解决带有Firebase托管的Flutter Web无法从存储中加载图片
我正在开发一个Flutter的Web应用程序,当我在调试模式(本地主机)上运行它时,它就像一个超级按钮,我的Firestore请求也有效,并且存储网址也一样,但是当我将其部署到Firebase Hosting时,我可以无法使用存储中的网址加载图片。这就是我得到的:
访问地址为 'https://firebasestorage.googleapis.com/v0/b/url-to-my-picture/?token=firestorage-key' 来源“ https://my-project.web.app”已被CORS阻止 策略:“访问控制允许来源”标头不存在 要求的资源。如果不透明的响应满足您的需求,请设置 请求的模式设置为“ no-cors”,以在禁用CORS的情况下获取资源。
我进行了搜索,然后发现需要在firebase.json文件上设置托管,这是我在托管部分所做的:
"hosting": {
"public": "build/web","ignore": [
"firebase.json","**/.*","**/node_modules/**"
],"rewrites": [
{
"source": "**","destination": "/index.html"
}
],"headers": [
{
"source": "**","headers": [
{
"key": "Access-Control-Allow-Origin","value": "*"
}
]
}
]
},
但是没有成功。请注意,我仅使用Flutter Web和Firebase本身。没有NodeJ,没有php。
编辑: 这是我加载图片的方式:
...
NetworkImage(
pic.url,),...
解决方法
通过google shell进行设置后,现在可以使用了!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。