我将图片上传到服务器:
const fileData = await fb.storage().ref(`ads/my_img.jpg`).put(image)
在早期版本中获取所需上传图片的网址:
const imageSrc = fileData.metadata.downloadURLs[0]
但是在5.0.4中它不起作用。
在文档downloadURLs
中已弃用:
/**
* @deprecated
* Use Reference.getDownloadURL instead. This property will be removed in a
* future release.
*/
downloadURLs: string[];
getDownloadURL
interface Reference
const fileData = await fb.storage().ref(`ads/${ad.key}.${imageExt}`).put(image)
const imageSrc = fileData.metadata.downloadURLs[0]
commit('createAd', {imageSrc})
方法我无法弄清楚如何使用它。
上传文件后,我需要从服务器获取渲染图像的URL。像这样:
downloadURLs[0]
如何为Firebase 5.0.4版本重写{{1}}?
答案 0 :(得分:1)
const fileData = await fb.storage().ref(`ads/${ad.key}.${imageExt}`).put(image)
const imageSrc = await fileData.ref.getDownloadURL()
答案 1 :(得分:0)
下载网址会在结果快照中返回,如下所示:
const fileData = fb.storage().ref(`ads/${ad.key}.${imageExt}`).put(image)
.then((snapshot) =>{
console.log(snapshot.downloadURL);
}
或者你可以获得像这样的现有对象的下载URL
storageRef.child('images/stars.jpg').getDownloadURL().then(function(url) {
console.log(url)
}).catch(function(error) {
// Handle any errors
});
此剪辑取自firebase developer page。如果您有任何疑问,我建议您查看该页面。大多数时候你可能会在那里找到答案。
答案 2 :(得分:0)
从存储路径 ImageSrc 获取并保存到数据库的内容必须删除
const imageSrc = fileData.metadata.downloadURLs[0]
并改为开处方
const imageSrc = await fb.storage().ref().child(fileData.ref.fullPath).getDownloadURL()
答案 3 :(得分:-1)
const imageSrc = await fileData.ref.getDownloadURL()