Firebase存储上载仅在iOS Safari上失败

时间:2019-02-07 16:45:09

标签: ios firebase mobile-safari firebase-storage

我已经实现了从客户端到Firebase存储的文件上传。 除 iOS 上的 Mobile Safari 以外,它在任何地方都可以正常工作。

代码非常简单,实际上与指南相同: https://firebase.google.com/docs/storage/web/upload-files

    const storageRef = firebase.storage().ref();
    const fileRef = storageRef.child(`${uid}/${fileId}`);
    const metadata = {
      contentType: file.type,
      customMetadata: { uploadedBy: email, uploadedDate: new Date().toDateString() }
    };
    return fileRef.put(file, metadata)

我设法检查了iOS手机上的网络和控制台,并报告了此错误:

  

无效的请求。 X-Goog-Upload-Command标头丢失。

网络请求附加了以下查询参数: upload_protocol=resumable

但是,在Windows Chrome上检查相同的请求,它设置为 upload_protocol=multipart

我猜想当可恢复时, X-Goog-Upload-Command 标头是必需的。

但是,由于它是执行请求并设置upload_protocol的基础,所以不确定如何添加它。

无论如何,我都会以为这会起作用。我没有在iOS文档中看到任何其他设置: https://firebase.google.com/docs/storage/ios/upload-files

0 个答案:

没有答案