我想用Django下载一个文件并首先检查一些权限(如果用户在线,如果用户拥有该文件等),那么他们就无法使用链接本身下载它。
我知道HttpResponse
,我想在视图上实现它。
这可能吗?感谢。
答案 0 :(得分:1)
您可以在视图中检查权限或所需内容,然后使用下一个代码在视图中返回文件:
import mimetypes
import urllib2
def download_view(request, path):
# Check everything you need to check
...
# Return file
file_name = urllib2.unquote(path).encode('utf8')
file_obj = open(file_name, "r")
m = mimetypes.guess_type(content_path)[0]
return HttpResponse(file_obj, content_type=m)