[英]How to get full downloadUrl from UploadTaskSnapshot in Flutter?
我正确地收到UploadTaskSnapshot
,并且字段 downloadUrl 包含一个解析上传文件下载链接的Uri
实例。
如何将 storage 和 downloadUrl 作为字符串获取?
老的
final uploadTask = imageStore.putFile(imageFile); final url = (await uploadTask.future).downloadUrl;
更新
这个答案https://stackoverflow.com/a/52690889/217408现在是准确的。
final ref = FirebaseStorage.instance
.ref()
.child('path')
.child('to')
.child('the')
.child('image_filejpg');
ref.putFile(imageFile);
// or ref.putData(Uint8List.fromList(imageData));
var url = await ref.getDownloadURL() as String;
或者
var url = Uri.parse(await ref.getDownloadURL() as String);
我通过以下代码从 v1.0.3 获取downloadUrl
。
StorageReference storageReference = _storage.ref().child(path);
StorageUploadTask uploadTask = storageReference.putFile(imageFile);
StorageTaskSnapshot taskSnapshot = await uploadTask.onComplete;
String downloadUrl = await taskSnapshot.ref.getDownloadURL();
@DomingoMG 看起来像他们想要的最新版本:
String location = await ref.getDownloadURL();
请参阅https://pub.dartlang.org/packages/firebase_storage#-example-tab-
更新:2020 年 11 月
onComplete
现在已从上传任务中删除。 所以,使用:
var reference = FirebaseStorage.instance.ref().child("your_path");
await reference.putFile(fileToUpload);
var url = await reference.getDownloadURL();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.