解决前端不是下载而是预览的问题

以前遇到过文件在七牛上,访问是下载而不是预览。
如今是遇到要下载,浏览器却预览了,解决下这个问题。

java后端解决
这就是Content-Disposition设置的问题

设置为inline,如果浏览器支持该文件类型的预览,就会打开预览,而不是下载:

response.setHeader("Content-Disposition", "inline; filename=bailan.jpg");

反之设置为attachment,浏览器则直接进行下载,纵使他能够预览该类型的文件。

response.setHeader("Content-Disposition", "attachment; filename=bailan.jpg");

注意:类似Chrome这样的浏览器不设置Content-Type也会自动打开,如果是它可识别预览的文件

所以最好还要设置Content-Type,上面的代码前应该先写下面的这段。

先获取servletContext,再获取mimeType,然后设置响应头,再写出到页面

        ServletContext servletContext = this.getServletContext();
        String mimeType = servletContext.getMimeType("/bailan.jpg");
        resp.setContentType(mimeType);
        ...................循环写出到页面

你可能感兴趣的:(解决前端不是下载而是预览的问题)