javascript - 如何从谷歌 Firebase 存储中获取 json 文件
问题描述
背景 我需要将大量产品库存上传到客户端的 indexeddb,以便我可以执行一些离线操作。它们的 json 文件大小可能高达 50 MB。因此,我将 json 文件上传到 google firebase 存储,目的是获取存储文件,读取 json 并将它们添加到 indexeddb。
问题
从谷歌存储中获取和读取文件的最佳方法是什么?
这是我的获取代码
var fileUrl ="https://firebasestorage.googleapis.com/v0/b/konstant-ccbcc.appspot.com/o/storeid.json?alt=media&token=8d56ba73-331e-452e-b0d4-e552264feee3"
function loadJSON() {
fetch(fileUrl)
.then(function(resp){
return resp.json()
})
.then(function(data){
console.log(data)
})
}
这是我得到的错误
对于 CORS 请求,Fetch API 无法加载 URL 方案必须是“http”或“https”。Uncaught (in promise) TypeError: Failed to fetch at loadJSON
解决方案
存储文件不可公开访问。向文件权限添加allUsers
查看者权限或向请求添加身份验证。配置 CORS,请参阅Firebase 存储和 Access-Control-Allow-Origin
推荐阅读
- r - 将连续轴更改为离散轴并设置轴限制
- python - 为什么pdftotext会抛出DLL加载失败错误,在windows10,python3.7上
- html - 如何在 Ubuntu 上的 VS Code 中格式化 HTML 代码?
- ssh - 如何从需要密钥的第二个远程主机 scp 到本地计算机?
- sql - BigQuery - 从使用复杂 CTE 的查询结果创建表?
- optaplanner - 在多个对象层次结构中设置分配
- java - Kafka Consumer 升级到 Java 15 后无法可靠轮询,Producer 会首先在同一 JVM 中查找和消费最近的记录
- python - 无法模拟 subprocess.check_call
- sql-server - 加入 SQL Bridge 表
- c++ - Excel xll 函数能否指示返回值应显示为日期而不是数字?