2015-01-12 4 views
0

Возможно ли изменить тип содержимого ответа после его написания.Установить тип содержимого ответа

У меня есть требование написать ответ на .txt-файл. Если есть какие-либо ошибки, он должен возвращать zip-файл вместо .txt, чтобы проинформировать конечного пользователя о сбоях.

Но даже если я задал тип содержимого для zip-файла в случае исключения, он не работает.

ответ

0

Нет. Вы можете создать почтовый индекс (не набрав каких-либо заголовков или что-либо для ответа), а затем, в конце концов, если это удастся, напишите тип содержимого как zip и распечатайте его для ответа, а если нет, напишите txt в тип содержимого и распечатать сообщение об ошибке.

Псевдо-код:

Zip zip = null; 
try 
{ 
    zip = buildZip(); 
} 
catch(Exception ex) 
{ 
    response.setContentType("text/html"); 
    response.getOutputStream().print("Error"); 
    return; 
} 
response.setContentType("application/zip"); 
response.setHeader("Content-disposition", "attachment; filename=zipfile.zip"); 
zip.print(response.getOutputStream()); 
Смежные вопросы