Jam*_*ell 10 django session nginx angularjs django-rest-framework
问题
我目前正在努力解决从Django提供身份验证强制媒体文件的众所周知的问题.问题的背景很简单:
X-Accel-Redirect
后验证.试图解决
到目前为止我所做的(并且它可以工作)是创建另一个需要令牌认证的API视图并将文件发回,然后创建一个Angular指令以用blob替换所有受保护的URL.当用户单击链接时,它使用令牌身份验证获取文件,然后创建包含该数据的Blob.然后浏览器打开该blob.
遗憾的是,无法共享blob,因此用户无法为这些文件粘贴彼此的链接.我想知道是否有办法绕过它.
目标
我的目标是使用令牌创建有效(和短期到期)会话.这样,当用户单击链接时,发送请求以检查是否存在有效会话,然后以某种方式配置浏览器以使其可以使用该会话.整个过程看起来像这样:
我不是在寻找一个已经实现的答案,我可以自己处理好的细节.我更感兴趣的是获得有关如何以最佳方式完成此操作的反馈.即:
一些选项
更新:我和一些提出以下选择的同事交谈过:
您可以简单地将令牌放入 cookie 中。
这样,浏览器就会自动将其发送到服务器,当用户直接访问可下载文件时,您可以使用它进行身份验证。
告诉Authorization:
Django 中间件从 cookie 中读取令牌字符串,而不是读取标头。
归档时间: |
|
查看次数: |
1224 次 |
最近记录: |