如何为非静态的受保护文件创建唯一的下载链接? (django)

时间:2018-09-26 23:14:57

标签: django django-2.0

概述:

您好,我制作了一个应用程序,该应用程序使用人员电子邮件和其他一些字段来构造唯一的url,例如example.com/signup/confirmed/5/uygduif-78q6rjhsadkfe-IUWGIasdy756/2597646/。我正在尝试使用该URL,以便该用户可以下载pdf, 从此URL,而不是其他 href < em>位置 ,但我不知道。关键是使其成为受保护的文件。我知道我可以强迫用户登录和填充内容,但这只是他们用于注册的pdf文件,因此无需创建帐户。

我尝试过的事情/一些想法:

我的第一次尝试是在模板中使用{% load static %},然后添加href并将其下载到模板中。那可以让我打开pdf文件并保存,但是它的URL是example.com/static/pdfs/some.pdf,这很糟糕,因为任何知道html的人都可以复制/粘贴该位置,然后将其粘贴到其他所有人,而现在我不这样做了。不会收到任何人的电子邮件,但每个人都可以下载。

我还制作了另一个应用程序,用户可以在该应用程序中将图像上传到数据库,然后可以循环浏览所有图像,但是这些src标签中的<img>属性都位于media/some_random_img_name.jpg 。因此,使用该示例将不起作用,因为任何知道html的人都可以使用其浏览器中的example.com/media/some_random_img_name.jpg再次执行上述操作,并且它将弹出。

问题/最终想法:

如何为该特定位置的多个注册用户创建文件的唯一受保护下载网址?

由于到目前为止的尝试,我认为最好的解决方案可能是通过电子邮件发送pdf,但是我想对什么是最佳选择以及每种方法的正面和负面看法发表一些意见。

0 个答案:

没有答案