当前位置:   article > 正文

下载文件HTTP请求及处理过程_文件要求http下载怎么办

文件要求http下载怎么办

客户端请求:

平淡无奇,其实就是对应了在网址中输入url,浏览器就能直接下载文件:

服务器端处理:

  1. 根据请求参数找到文件
  2. 设置响应头:response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode(filename, "UTF-8"));
  3. 将文件二进制数据保存到文件输入流
  4. 将文件二进制数据通过缓冲区保存到文件输出流
  1. // 首先根据请求,找到服务器端文件存储地址,并创建File文件
  2. File file = new File(filePath);
  3. filename = new String(filePath.getBytes("iso8859-1"),"UTF-8");
  4. //设置响应头,控制浏览器下载该文件
  5. response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode(filename, "UTF-8"));
  6. //读取要下载的文件,保存到文件输入流
  7. DataInputStream dataInputStream = new DataInputStream(new FileInputStream(file));
  8. //创建输出流
  9. out = response.getOutputStream();
  10. //缓存区
  11. byte bufferOut[] = new byte[1024];
  12. int bytes = 0;
  13. //循环将输入流中的内容读取到缓冲区中
  14. while ((bytes = dataInputStream.read(bufferOut)) != -1) {
  15. out.write(bufferOut, 0, bytes);
  16. }
  17. //关闭
  18. out.close();

上面极为关键的一步就是第二步,通过第二步,我们才能控制浏览器下载该文件。


 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/63555
推荐阅读
相关标签
  

闽ICP备14008679号