Определить точный тип / расширение загружаемого файла - PullRequest
0 голосов
/ 05 июля 2019

В настоящее время я работаю над приложением Spring-Boot, которое может принимать данные файлов, закодированные в Base64, и отправлять их получателю.

Я загружаю следующие данные:

{
    "fileName":"excelfile",
    "fileExtension":"xlsx",
    "fileData":"<base64 string>"
}

Я хочу проверить загруженные данные, поэтому мне нужно убедиться, что строка base64 действительно декодируется в файл электронной таблицы Excel xlsx.До сих пор я старался изо всех сил с URLConnection и Apache Tika, однако Tika могла определить только по имени файла, является ли application / vnd.openxmlformats-officedocument.xxxx документом Excel Spreadsheetили нет.

Приложив столько усилий, пользователь мог просто загрузить документ Word в кодировке base64 с расширением xlsx, что запутало приложение.

Для моего приложения было бы достаточно извлечь расширение файла изжало base64.Есть ли служебные библиотеки для таких задач?Я знаю, что общедоступный инструмент Base64.Guru имеет способ определить действительный подтип и расширение openxmlformats-officedocument , поэтому я не вижу в этом невыполнимой задачи.

...