gpt4 book ai didi

Scala Lift - 保护文件免遭盗链的强大方法

转载 作者:行者123 更新时间:2023-12-01 06:39:07 26 4
gpt4 key购买 nike

我正在尝试实现一种方法来阻止盗链和/或未经授权访问我的应用程序中的资源。

我尝试添加的方法是我之前在 PHP 应用程序中使用过的方法。基本上在第一次调用页面时设置 session 。图像通过图像标签以 session 值作为参数添加到页面:

<img src="/files/image/image1.jpg?session=12345" />

当请求图像时,脚本会检查 session 是否已设置并与提供的值匹配。如果不满足条件,则服务页面返回 null。在代码的最后,我取消了 session 设置,因此来自页面范围之外的进一步请求将返回 null。

在提升框架内,这种方法的最佳实现是什么?

在此先感谢您的帮助,非常感谢:)

最佳答案

您可以使用 SessionVar以此目的。在 SessionVar你会存储一个 Map[SessionImageId, RealImageId]并在初始化 session 时(即第一次加载页面时),您将生成一些随机 SessionImageId您将映射到真实图像 ID 的 s。在您的 html 中,您只暴露阴影 SessionImageId所以没有人可以从 id 中追溯图像。当请求图像时,您只需在 Map 中查找真实 ID .

信息:Exploring Lift , Lift wiki

当然,如果隐藏 ids 并不重要,您可以简单地使用 SessionVar[Boolean] .

关于Scala Lift - 保护文件免遭盗链的强大方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12556407/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com