SpringBoot HttpServletResponse 返回文本流
要让 HttpServletResponse 返回文本流,可以按照以下步骤进行操作:
- 在 Controller 中注入 HttpServletResponse 对象:
@Autowired
private HttpServletResponse response;
- 设置返回的 Content-Type 为 'text/plain',表示返回的是纯文本:
response.setContentType('text/plain');
- 获取输出流,并将文本内容写入输出流:
try {
OutputStream outputStream = response.getOutputStream();
outputStream.write('Hello, World!'.getBytes("UTF-8"));
outputStream.flush();
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
完整的示例代码:
@RestController
public class TextStreamController {
@Autowired
private HttpServletResponse response;
@RequestMapping("/textStream")
public void textStream() {
response.setContentType('text/plain');
try {
OutputStream outputStream = response.getOutputStream();
outputStream.write('Hello, World!'.getBytes("UTF-8"));
outputStream.flush();
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
访问 http://localhost:8080/textStream,可以看到浏览器输出了 'Hello, World!'。
原文地址: https://www.cveoy.top/t/topic/mkEZ 著作权归作者所有。请勿转载和采集!