我对网络开发有点陌生,所以请原谅这个稍微初学者的问题。谁能给我一些关于如何在使用 JavaScript/Flash 小部件显示内容时防止下载文件的一般指示?
基本的困境是使文件可通过页面小部件播放,同时防止直接下载源媒体。但是,由于 JavaScript 和 Flash 是浏览器端而不是服务器端,所以我不确定如何做到这一点。
混淆源文件名是另一种选择,但我不确定执行此操作的好方法是什么。也许用算法隐藏在 .swf 文件中?但不确定 .swf 对反向编译的免疫力如何。
非常感谢。
最佳答案
事实上,你不能。有两种类型的下载;普通(直接)一种和通过流式传输的一种。
我建议您使用直接的方式,但要传递一个授权 key 。
此类 URL 的示例如下:
/download?file=134&auth=A34C56E4FCD3908DA
^ ^ ^
| | '- The predefined access token
| '- The requested file
'- Gateway script
不要忘记您必须将敏感文件存储在文档根目录之外的某个位置。
网关脚本看起来像(伪代码):
if( validate_token( get('auth') ){
file_id = get('file');
file_name = get_file_name( file_id );
data = file_read_all( file_name );
}
关于javascript - 使文件只能由 JavaScript 和/或 Flash 读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6258477/