猿问

django文件下载问题

我有一些文件存储在OpenStack Swift(或任何其他存储系统)上。我的django应用程序提供了基于浏览器的GUI,供用户从Swift后端下载这些文件:


(1) Each file will have a URL such as: http://domain.com/files/file1

(2) User could use browser or any other client program based on HTTP to download files.

我已经测试了将静态文件下载为:


def download(request):

    try:

        #TODO

        file_name = 'E:/sample.docx'

        fsock = open(file_name,"r")

        mime_type_guess = mimetypes.guess_type(file_name)

        if mime_type_guess is not None:

            response = HttpResponse(fsock, mimetype=mime_type_guess[0])  

        response['Content-Length'] = os.path.getsize(file_name)         

        response['Content-Disposition'] = 'attachment; filename=' + file_name                        

    except IOError:

        response = HttpResponseNotFound()

    return response

我的问题是:


(1)我可以从下载视图下载文件,但下载的文件大小始终为1k。这是什么问题


(2)我仍然不知道如何为存储在其他对象存储后端(例如OpenStack Swift)上的动态文件下载提供服务?


暮色呼如
浏览 197回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答