当前位置: 首页 > 面试题库 >

如何使用django制作一个私人下载区?

鞠征
2023-03-14
问题内容

我想在由django支持的网站上实现私有下载区域。用户将必须以适当的权限登录才能获得一些静态文件。

您对编写此功能有何建议。有技巧或窍门吗?

提前致谢

更新:也许是由于我的英语不好或我对此体系结构缺乏了解(这就是我要问的原因),但是我的问题是:如何确保对静态文件(由常规Web服务器提供服务,而无需Django的访问)进行控制通过django认证。我将更仔细地阅读django文档,但我不记得该问题的现成解决方案。

Update2:我的主机提供商仅允许使用FastCgi。


问题答案:

因此,通过搜索,我找到了这个讨论主题。

您可能会对三件事感兴趣。

首先是mod_html" target="_blank">python方法,
然后是mod_wsgi方法

两者看起来都不太好。

更好的是X-Sendfile标头,它不是完全标准的,但至少在apache和lighttpd中有效。

从这里开始,我们有以下内容。

@login_required
def serve_file(request, context):
    if <check if they have access to the file>:
        filename = "/var/www/myfile.xyz" 
        response = HttpResponse(mimetype='application/force-download') 
        response['Content-Disposition']='attachment;filename="%s"'%filename
        response["X-Sendfile"] = filename
        response['Content-length'] = os.stat("debug.py").st_size
        return response
    return <error state>

那几乎应该就是您想要的。只要确保您碰巧使用了X-Sendfile支持即可。



 类似资料:
  • 我正在尝试加载一个简单的文本文件,而不是Kafka中的标准输入。下载Kafka后,我执行了以下步骤: 开始动物园管理员: zookeeper-server-start.sh配置zookeeper.properties 已启动服务器 kafka-server-start.sh配置server.properties 创建了一个名为“test”的主题: <code>bin/kafka主题。sh--创建-

  • 我已经被这个问题困住很长时间了,我读了一堆线程,但没有一个描述我的问题,我尝试了一大堆不同的方法来做它,但没有一个奏效。我有一个PFFile,我从数组中提取并通过segue发送到下载详细视图。这个文件被称为“下载文件”。我正在尝试编程一个按钮,当点击启动下载。代码如下: 下面是发送下载文件的segue: 我使用PFQuery获取数组数据并将其存储到“pdfarray”中。这是一个同步下载,因为当我

  • 问题内容: 我有图像列表,我希望每个图像都有一个“下载”链接,以便用户可以下载图像。 所以有人可以指导我如何为php中的任何文件提供下载链接吗? 编辑 我希望在单击下载链接时显示一个下载面板,但我不想导航到要在浏览器中显示的图像 问题答案: 如果要强制下载,可以使用如下所示的内容: 如果仅使用常规链接链接到此脚本,则将下载文件。 顺便说一句,上面的代码段需要在页面的开头执行(在没有任何标题或HTM

  • 我在这里阅读了Twilio电话教程:https://www.fullstackpython.com/blog/make-phone-calls-python.html 与Twilio教程不同,Twilio教程确实会叫我的手机,但它只播放MP3或人工智能语音。我希望能够进行对话。有没有办法用Twilio API连接我电脑的麦克风并与自己的手机通话?我一直在网上搜索,却找不到办法。请帮忙。

  • 感谢你在这个问题上的帮助。 我使用的是Kafka 0.8.2 这是我写的制作人代码。

  • 我使用的是汇流3.3.0。我的意图是使用kafka-connect将Kafka主题中的值插入Oracle表中。我的连接器与我使用avro console producer生成的avro记录工作良好,如下所示: 最后是序列化程序: 但我所理解的是,需要定义一些类似模式的东西,并使用一些avro序列化器来获得确切的数据,就像我使用avro console Consumer所做的那样。我读过一些示例代码