zoukankan      html  css  js  c++  java
  • 流文件下载

    在我们用浏览器浏览网页时,浏览器会帮我们自动解析它支持的文件类型。但是有时我们需要让用户去保存这些文件,而不是让浏览器直接解析。所以这时就要对服务器发给浏览器的response做一些特别的设置,让浏览器不去解析这些文件。在response中需要去设置Content-Disposition和Content-Type的值。这样浏览器就不会去解析这些数据,而弹出下载框让用户下载。

    django示例

    1
    2
    3
    4
    5
    file=open('/home/amarsoft/下载/example.tar.gz','rb')
    response =HttpResponse(file)
    response['Content-Type']='application/octet-stream'
    response['Content-Disposition']='attachment;filename="example.tar.gz"'
    return response

    但是这个文件名如果是中文发送到前端就会乱码, django可以通过url的编码方式来命名文件, 浏览器收到后能够解析成中文

    1
    2
    3
    from django.utils.encoding import escape_uri_path
     
    escape_uri_path("文件名")
  • 相关阅读:
    List sort()方法
    解析器
    beautifulsoup库
    break 语句
    enumerate函数
    POJ 1915 Knight Moves
    POJ 1745 Divisibility
    POJ 1731 Orders
    POJ 1664 放苹果
    POJ 1606 Jugs
  • 原文地址:https://www.cnblogs.com/wszxdzd/p/10710513.html
Copyright © 2011-2022 走看看