◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
setcontenttype 对 spring boot 图片预览和下载的影响
在 spring boot 2.5.0 中,setcontenttype 方法放置的位置会影响图片的预览和下载。
放在后预览
response.setcontenttype("image/*"); // 放在获取文件流之后
在这种情况下,setcontenttype 设置在读取文件流并输出到 servletoutputstream 之后,浏览器会将响应内容视为预览。即,图片会在浏览器中显示。
放在前下载
response.setContentType("image/*"); // 放在获取文件流之前
如果将 setcontenttype 设置在读取文件流之前,浏览器会将响应内容视为下载。即,浏览器会弹出文件下载对话框,让用户保存文件。
说明
当浏览器收到响应时,它会根据响应内容类型决定如何处理响应内容。如果内容类型设置为图像,则浏览器会预览响应内容;如果内容类型设置为下载文件,则浏览器会弹出文件下载对话框。
所以,如果需要预览图片,请将 setcontenttype 放在获取文件流之后,否则将弹出文件下载对话框。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。