如何从Cloud FireStore firebase中存储的URL获取文件扩展名

时间:2019-09-18 11:25:50

标签: android firebase-storage

我有一个存储在云数据库firestore中的URL。我想检查文件的扩展名是图像还是视频。由于.DOT之后没有扩展名,因此我无法执行任何子字符串方法这类https://firebasestorage.googleapis.com/v0/b/abc-43546.appspot.com/o/content%2Fc86608030813072?alt=media&token=6505c905-cbc2-40e9-a48d-7edda3090666

请帮助我在互联网上找不到任何可行的解决方案。谢谢

1 个答案:

答案 0 :(得分:0)

不确定如何在AndroidJava 我猜?

JavaScript(此处为 TypeScript 版本)中,它的工作方式如下。这是我的 nodemailer 函数的一部分,用于发送带有附件的电子邮件。

import { DocumentSnapshot } from 'firebase-functions/lib/providers/firestore';
import { EventContext } from 'firebase-functions';

async function onCreateSendEmail(
  snap: DocumentSnapshot,
  _context: EventContext
) {
  try {
    const contactFormData = snap.data();
    ...
    const mailOptions = {
      attachments: [
        {
          contentType: `${contactFormData!.contentType}`,
          filename: `${contactFormData!.fileName}`,
          path: `${contactFormData!.fileUploader}`,
        },
      ],
    ...
    }
  ...
  }
...
}

contentTypefileNamefileUploader 定义在前端。在这种情况下,这些是在提交表单之前定义的,并从表单对象中获取数据。 fileUploader 是必不可少的,它是存储所有文件元数据的表单控件名称。