`

文件下载时Content-Disposition的使用方法

 
阅读更多
在进行Web开发时,可能遇到遇到以下几种需求:
l   希望某类或者某已知MIME 类型的文件(比如:*.gif;*.txt;*.htm)能够在访问时弹出“文件下  载”对话框。
l   希望客户端下载时以指定文件名显示。
l   希望某文件直接在浏览器上显示而不是弹出文件下载对话框。
对于上面的需求,使用Content-Disposition属性就可以解决。下面是代码示例:
response.setHeader("Content-disposition", "attachment;filename=" + fileName)。
//Content-disposition为属性名。
//attachment表示以附件方式下载。如果要在页面中打开,则改为inline。
//filename如果为中文,则会出现乱码。解决办法有两种:
//1、使用fileName = new String(fileName.getBytes(), "ISO8859-1")语句
//2、使用fileName = HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8)语句


参考:http://blog.163.com/liulei0729@126/blog/static/32530612201011122438316/
分享到:
评论

相关推荐

    Content-Disposition使用方法和注意事项

    在使用Content-Disposition时,需要注意到它是MIME协议的一个扩展,并且在实际应用中有一些重要的使用方法和注意事项。 首先,了解MIME协议。MIME(Multipurpose Internet Mail Extensions)即多用途互联网邮件扩展...

    header中Content-Disposition的作用与使用方法

    最后,当响应的内容类型被设置为application/octet-stream时,意味着你不想直接显示内容,而是希望浏览器弹出一个“文件下载”的对话框,此时Content-Disposition头信息的使用尤为重要。 总结来说,Content-...

    文件下载response.setHeader()下载中文文件名乱码问题解决办法.pdf

    文件下载时 response.setHeader() 下载中文文件名乱码问题可以通过使用 email 附件名编码方法对文件名进行编码来解决。同时,需要正确设置 Content-Type 和 Content-Disposition 头字段来确保文件下载正确。

    cgi实现下载文件

    在这个场景中,我们将探讨如何使用CGI来实现在网页上提供文件下载的功能。 一、CGI基础 1. CGI原理:当用户通过浏览器访问一个特定的CGI程序时,Web服务器会接收请求并转发给CGI应用。CGI应用处理请求,生成响应...

    bug-chromium-pdf-content-disposition-encoding

    标题 "bug-chromium-pdf-content-disposition-encoding" 暗示了一个与 Chromium 浏览器相关的 PDF 文件处理问题,特别是涉及到 `Content-Disposition` 和编码方面。`Content-Disposition` 是一个 HTTP 头部字段,...

    文件下载及web文件的contentType类型大全

    本文将详细介绍如何实现文件下载功能以及不同文件类型的`Content-Type`设置。 #### 一、文件下载的基本实现 文件下载的核心在于通过HTTP响应将文件内容发送给客户端,并且通过设置特定的HTTP头部来告诉浏览器应该...

    JSP实现文件下载---源码

    - **URL编码**:文件名可能包含特殊字符,因此在设置`Content-Disposition`时应使用`URLEncoder.encode()`进行编码。 - **设置缓存策略**:可以控制浏览器是否缓存该文件,避免不必要的重复下载。 - **分块传输**...

    Content-Type详解

    在HTTP头中加入Content-Disposition头域,可以指定文件的下载方式和文件名。例如,fprintf( file, "Content-Disposition: attachment; filename=\"%s\" \r\n", fileName);经过测试,html、pdf、gif等原来在网页中...

    nginx文件强制下载的配置方法

    添加头信息Content-Disposition “attachment;”会使浏览器强制下载: 代码如下: #表示浏览器内嵌显示一个文件 Content-disposition: inline; filename=foobar.pdf   #表示会下载文件,如火狐浏览器中 Content-...

    Spring MVC 文件上传下载 后端 - Java.zip

    - **HttpServletResponse**:在Controller方法中,我们可以通过HttpServletResponse对象来构造HTTP响应,设置合适的响应头如Content-Type、Content-Disposition,以便浏览器能够正确处理文件下载。 - **流式传输**...

    Java Web文件下载,解决了使用IE11下载文件时所出现的乱码问题

    分析这个文件可以帮助我们深入理解解决IE11下载文件乱码问题的方法。具体来说,这个文件可能包含了Servlet的实现,通过设置正确的HTTP响应头,确保文件名在下载过程中正确显示。 总的来说,解决Java Web中IE11下载...

    上传绕过WAF的15中姿势

    由于IIS6.0总是采用第一个`Content-Disposition`中的值作为接收参数,因此可以通过发送多次`Content-Disposition`头部来尝试绕过。例如: ```bash ------WebKitFormBoundary2smpsxFB3D0KbA7D Content-Disposition: ...

    java web文件下载功能实现 - longshengguoji的专栏 - CSDN博客1

    在这个例子中,Servlet设置`Content-Type`为`application/octet-stream`,这告诉浏览器文件应该被当作二进制流处理,而`Content-Disposition`头则指示浏览器以附件形式下载文件,并指定文件名。 #### 注意事项 - ...

    PHP文件下载

    使用这样的类,只需实例化对象,传入文件路径和其他参数(如文件名、下载速率限制等),然后调用相应的下载方法即可完成文件的下载服务。这样既提高了代码的复用性,也简化了开发流程。 总的来说,PHP文件下载类是...

    使用commons-fileupload实现的文件上传和下载

    - **下载时**:在设置`Content-Disposition`时,如果文件名包含中文,需使用URL编码来避免乱码,如`response.setHeader("Content-Disposition", "attachment; filename*=UTF-8''" + URLEncoder.encode(fileName, ...

    文件上传下载-springboot-demo.zip

    在本地存储时,通常会指定一个目录路径,然后使用`file.transferTo(new File(savePath))`方法将文件写入。 **文件下载** 文件下载涉及到HTTP响应的构建,通常通过`ResponseEntity`或`HttpServletResponse`来实现。...

Global site tag (gtag.js) - Google Analytics