У меня есть приложение SpringBoot, которое мне нужно для сброса файла в OutputStream
, чтобы клиент мог загрузить файл. Следующий код является рабочим файлом:
public FileData getFile(FileRequest request, HttpServletResponse httpResponse) {
byte[] byteArr = getBytes(); // get file content in byte[]
try (InputStream inStream = new BufferedInputStream(byteArr);
OutputStream outStream = httpResponse.getOutputStream();) {
while (inStream.read(buffer, 0, 1000) > 0) {
outStream.write(buffer, 0, 1000);
}
outStream.flush();
}
FileData fileData = new FileData();
fileData.setReceiveTime(someTime);
return fileData;
}
Когда я проверял этот код в Почтальоне, Почтальон показывал это сообщение
"Этот ответ не удалось просмотреть. Загрузите ответ, чтобы открытьэто с соответствующим приложением "
, которое я смог сохранить ответ в файл, с которым я тестировал. Но Почтальон не показал FileData
в ответе JSON. Я проверил логи, fileData
был заполнен с правильным значением. Так есть ли способ позволить Postman показывать FileData
как ответ JSON?
И мне интересно, может ли вызывающая сторона моего API получить как файл для загрузки, так и FileData
, который я возвратил вответ JSON.