Отворете файла в браузъра с помощта на Spring-MVC

Чета файла от базата данни и се опитвам да отворя файла в браузъра. Моят код е по-долу...

когато правя така по това време файлът се изтегля автоматично

response.setContentType("application/octet-stream");
response.setHeader("Content-disposition", "inline; filename=\""+ docName + "\"");

Но когато правя това по това време, файлът се отваря в браузъра.

response.setContentType("application/pdf");
response.setHeader("Content-disposition", "inline; filename=\""+ docName + "\"");

Това се случва поради mimetype "application/pdf". Но в моето приложение не знам mimetype на файла. Може да бъде всичко като pdf, изображение, txt, doc и т.н. И така, искам да запазя моя mimetype по подразбиране, който е „application/octet-stream“ и също така искам да отворя този файл в браузър.

Моля, помогнете ми.

Благодаря предварително...


person abhishek    schedule 21.10.2014    source източник


Отговори (1)


Бих опитал Apache Tika:

Получаване на подтип MimeType с Apache tika

или MediaType от Библиотеки на гуава.

Без тип съдържание браузърът ще го изтегли като прикачен файл.

person Claes Mogren    schedule 21.10.2014
comment
Ако не задам действителния тип съдържание, тогава файлът няма да се отвори автоматично в браузъра. Не е ли възможно да се покаже файлът в браузъра, без да се въведе действителен тип съдържание? - person abhishek; 21.10.2014
comment
Не, не мисля така. Никога не съм го карал да работи в нашето приложение, без да задам типа съдържание. Задаваме го според суфикса на файла, тъй като знаем оригиналното име на качения файл. - person Claes Mogren; 21.10.2014