上传图片至Firebase Storage遇重试超时及跨域授权错误求助
Firebase Storage上传图片报错(storage/retry-limit-exceeded & net::ERR_FAILED)处理方案
上传图片或保存产品失败:FirebaseError: Firebase Storage: Max retry time for operation exceeded, please try again. (storage/retry-limit-exceeded);请求链接
https://firebasestorage.googleapis.com/v0/b/olx-clone-18561.appspot.com/o?name=images%2Fproject%20olx.webp出现net::ERR_FAILED错误。
以下是针对性解决步骤:
- 排查网络环境:net::ERR_FAILED多与网络阻塞有关,切换至稳定网络(如手机热点),关闭本地防火墙、代理工具,测试能否正常访问Firebase Storage域名。
- 自定义上传重试参数:修改上传代码的重试配置,调整重试间隔或缩短最大重试时长,避免触发超时限制。示例代码:
const storageRef = firebase.storage().ref('images/project olx.webp'); storageRef.put(file, { retryDelayMultiplier: 1.5, // 降低重试间隔倍数,默认值为2 maxRetryTime: 30000 // 缩短最大重试时间至30秒,默认60秒 }).then(snapshot => { // 上传成功后续逻辑 }).catch(error => { // 错误捕获处理 }); - 验证Storage安全规则:确认当前规则允许用户上传文件,调试阶段可临时放宽规则(测试完成后需恢复严格权限):
rules_version = '2'; service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write: if request.auth != null; // 调试时可改为allow read, write: true; } } } - 检查文件状态:确认上传的
project olx.webp文件未损坏,且大小在Firebase Storage默认限制(5GB)内。 - 升级Firebase SDK:旧版SDK可能存在重试逻辑缺陷,更新至最新版本后重新尝试上传。
内容的提问来源于stack exchange,提问作者Jackson
相关产品推荐
相关产品推荐

