如何下载/只读取文件的前80KB?

Deu*_*hor 2 javascript ajax jquery greasemonkey download

我正在为一个有很多flash文件的网站制作Greasemonkey脚本.我想制作一个闪存的哈希,问题是闪存文件高达10兆字节.

这很慢; 我希望能够只获取前80KB的哈希值.最终结果是将包含不需要的内容的某些Flash文件列入黑名单的简单方法.我的脚本如何仅获取文件的前80 KB(左右)?

Bro*_*ams 9

发送range在你的AJAX请求.

例如:

$.ajax ( {
    url:        'http://TARGET_SERVER.COM/TARGET_PATH/TARGET_FILE.FLV',
    headers:    { Range: "bytes=0-80000" },
    success:    function (Resp) {
                    console.log(Resp);
                }
} );
Run Code Online (Sandbox Code Playgroud)

(对于与目标页面位于同一域的文件.)



对于跨域文件,请使用GM_xmlhttpRequest():

GM_xmlhttpRequest ( {
    method:     "GET",
    url:        'http://TARGET_SERVER.COM/TARGET_PATH/TARGET_FILE.FLV',
    headers:    { Range: "bytes=0-80000" },
    onload:     function (Resp) {
                    console.log(Resp.responseText);
                }
} );
Run Code Online (Sandbox Code Playgroud)