Django 文件传输

文件传输,服务器上传至浏览器

分为两种, 直接路由到静态文件,可直接获取
使用 FileResponse 封装

  1. 直接路由到静态文件,可直接获取

    1. 在 settings 文件中设置路径
    2. 直接访问http://<server>/static/<filename>
  2. 使用FileResponse

    	def filetransform(request, *args, **kwargs):
    	    #  设置请求头,设置文件名
    	    ff = open("static/3.xlsx", 'rb')
    	    response = FileResponse(ff, as_attachment=True, filename="5.xlsx")
    	    response['content-type'] = 'application/octet-stream'
    	    response['Content-Disposition'] = 'attachment; filename="{}"'.format("4.xlsx")  # 以此文件名为准
    	    return response
    	
    	def markdown_file(request, *args, **kwargs):
    	    filename = "英语.xmind"
    	    ff = open("static/{}".format(filename), "rb")
    	    # 使用此方法能够避免不同文件造成文件名不可显示
    	    response = FileResponse(ff, as_attachment=True, filename=filename)
    	    return response
    

猜你喜欢

转载自blog.csdn.net/weixin_42290927/article/details/86519103
今日推荐