【问题标题】:How to get the url from Firebase Storage file?如何从 Firebase 存储文件中获取 url?
【发布时间】:2022-01-18 07:52:33
【问题描述】:

我想从 firebase 存储中检索 Uint8List 图像的 URL。但我无法做到这一点。它打印快照,而不是 url。请帮忙。

我的代码:

 void _storeSignature() async {
        try {
          final  Uint8List? signature = await exportSignature();
    
          final FirebaseStorage? storage = FirebaseStorage.instance;
          final String? pictureUrl =
              "signature/${DateTime.now().millisecondsSinceEpoch.toString()}.png";
    
          final ref = storage!.ref().child(pictureUrl!);
          final uploadTask = ref.putData(signature!);
          final downurl = await uploadTask.whenComplete(() {
            return ref.getDownloadURL();
          });
          final url = downurl.toString();
    
          print(url);
    
        } catch (e) {
          rethrow;
        }
      }

【问题讨论】:

    标签: firebase flutter dart firebase-storage


    【解决方案1】:

    在调用 ref.getDownloadURL() 时,您必须 await 获取 URL

    改变

    return ref.getDownloadURL();
    

    进入

    return await ref.getDownloadURL();
    

    【讨论】:

    • 不客气!如果答案有帮助,请接受它作为答案
    【解决方案2】:

    UploadTask 类扩展了Future,所以你也可以在那里使用await

    await ref.putData(signature!);
    final downurl = await ref.getDownloadURL();
    final url = downurl.toString();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-28
      相关资源
      最近更新 更多