0

我对 Web 开发有点陌生,所以请原谅这个稍微初学者的问题。谁能给我一些关于如何在使用 JavaScript/Flash 小部件显示内容时防止下载文件的一般指示?

基本的困境是使文件可由页面小部件播放,同时阻止直接下载源媒体。但是,由于 JavaScript 和 Flash 是浏览器端而不是服务器端,我不知道如何做到这一点。

混淆源文件名是另一种选择,但我不确定这样做的好方法是什么。也许隐藏在 .swf 文件中的算法?不确定对反向编译 .swf 有多大的免疫力。

谢谢一堆。

4

2 回答 2

1

事实上,你不能。有两种类型的下载;正常(直接)一个和一个通过流媒体。

我建议您使用直接的,但要传递一个授权密钥。

此类 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 );

}
于 2011-06-06T22:00:31.573 回答
1

如果您的目的是防止有人窃取您的源代码,您将无能为力,因为 javascript 需要通过浏览器下载。您可以将您的关键代码翻译成某种服务器端语言,然后仅将其输出传递给 brwoser(或 flash)。或者尝试一些服务器端 javascript 引擎

于 2011-06-06T22:00:33.157 回答