【发布时间】:2017-01-02 18:07:18
【问题描述】:
我设置这个线程是为了澄清,firebase 存储 putString 方法 是否 或 不 在 React-native 中工作.
根据我的搜索,目前无法使用 put 方法将文件或 Blob 类型上传到 Firebase 存储。
React Native 不支持 File 和 Blob 类型,因此 Firebase 存储上传在此环境中不起作用。但是文件下载确实有效。
因此调用
firebase.storage().ref()
.child(userID)
.put(new File(['this is a small amount of data'], 'sample-text.txt', { type: "text/plain" }), { type: "text/plain" })
.then(p => {console.log(p)})
.catch(p => {console.log(p)})
不起作用并以响应结束
代码:“存储/未知”消息:“Firebase 存储:未知错误 发生,请检查服务器响应的错误有效负载。”名称: "FirebaseError" serverResponse : "Multipart body 不包含 2 或 3 部分。"
不过,还有另一个选项可以使用 Firebase 存储 putString 方法将数据上传到 Firebase 存储。它适用于纯字符串。但是即使我用这种方法上传。我得到了和以前一样的服务器响应。
firebase.storage()
.ref()
.child(userID)
.putString('string')
.then(p => {console.log(p)})
.catch(p => {console.log(p)});
根据我从this answer 那里学到的知识。 putString 方式应该 有效。
我做错了什么?该代码在 React 中对我来说很好用。每当我粘贴到 React-native 时。它停止工作。
【问题讨论】:
-
试试react-native-fetch-blob,该库可以在 React Native 中上传文件。它还提供了一个sample app
-
我最终尝试了 react-native-fetch-blob 和 react-native-firestack。我无法使其中任何一个工作..
-
groups.google.com/forum/#!searchin/firebase-talk/react$20native/… React Native 目前不支持 Firebase 存储
标签: firebase upload react-native firebase-storage