欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS實現(xiàn)百度網(wǎng)盤任意文件強制下載功能

 更新時間:2018年08月31日 15:45:03   作者:池溫希傲  
這篇文章主要介紹了JS實現(xiàn)百度網(wǎng)盤任意文件強制下載 ,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

代碼:

//get file list data
var data=require("system-core:context/context.js").instanceForSystem.getList().listView.listsData;
//calculate sign
function base64Encode(r){var t,e,a,c,n,o,h="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(a=r.length,e=0,t="";a>e;){if(c=255&r.charCodeAt(e++),e==a){t+=h.charAt(c>>2),t+=h.charAt((3&c)<<4),t+="==";break}if(n=r.charCodeAt(e++),e==a){t+=h.charAt(c>>2),t+=h.charAt((3&c)<<4|(240&n)>>4),t+=h.charAt((15&n)<<2),t+="=";break}o=r.charCodeAt(e++),t+=h.charAt(c>>2),t+=h.charAt((3&c)<<4|(240&n)>>4),t+=h.charAt((15&n)<<2|(192&o)>>6),t+=h.charAt(63&o)}return t}
function u(j,r){var a=[];var p=[];var o="";var v=j.length;for(var q=0;q<256;q++){a[q]=j.substr((q%v),1).charCodeAt(0);p[q]=q}for(var u=q=0;q<256;q++){u=(u+p[q]+a[q])%256;var t=p[q];p[q]=p[u];p[u]=t}for(var i=u=q=0;q<r.length;q++){i=(i+1)%256;u=(u+p[i])%256;var t=p[i];p[i]=p[u];p[u]=t;k=p[((p[i]+p[u])%256)];o+=String.fromCharCode(r.charCodeAt(q)^k)}return o}
var sign=base64Encode(u(yunData.sign5, yunData.sign1)).replace(/=/g,"%3D").replace(/\+/g,"%2B");
//downloader
function down(index){$.ajax({type:"GET",url:"/api/download?sign="+sign+"&timestamp="+yunData.timestamp+"&fidlist=%5B"+data[1].fs_id+"%5D",success:function(d){console.warn(d.dlink
[index-1].dlink);}});}

用法:

1.進入網(wǎng)盤文件目錄。

2.F12打開調試工具將代碼粘貼到控制臺并回車。

3.在控制臺輸入down(文件序號)命令,回車即可得到文件的下載地址,可復制到任何下載工具滿速下載。

“文件序號”對應文件目錄列表,下載第一個文件就輸入down(1),第二個文件就輸入down(2),依此類推。注意括號是英文括號。

原理:

下載鏈接獲取接口:

通過監(jiān)聽與其服務器交互的請求數(shù)據(jù)分析得到獲取下載鏈接的接口,在源文件中搜索發(fā)現(xiàn)了接口的調用過程。

接口:/api/download?sign=***&timestamp=***&fidlist=%5B***%5D"

在去除了一些不影響調用結果的參數(shù)后得知調用接口主要需要以下參數(shù):

1.sign(用戶身份)
2.timestamp(時間戳)
3.fs_id(文件標識碼)

sign的計算:

算法在源文件中可以發(fā)現(xiàn),“var sign=”搜索全部文件即可發(fā)現(xiàn)算法代碼,將其復制調用就能計算出sign的值。

timestamp的獲?。?/strong>

該值保存在全局變量中,直接yunData.timestamp就可以拿到。

fs_id的獲?。?/strong>

調用“context.js”腳本就可以拿到文件列表,文件列表中保存了當前目錄所有文件的fs_id。

var data=require("system-core:context/context.js").instanceForSystem.getList().listView.listsData;

總結

以上所述是小編給大家介紹的JS實現(xiàn)百度網(wǎng)盤任意文件強制下載,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • 基于JavaScript實現(xiàn)Tab選項卡切換效果

    基于JavaScript實現(xiàn)Tab選項卡切換效果

    這篇文章主要介紹了基于JavaScript實現(xiàn)Tabs選項卡切換效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • 談談target=_new和_blank的不同之處

    談談target=_new和_blank的不同之處

    這篇文章主要介紹了target="_new"和"_blank"的區(qū)別實例詳解,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-10-10
  • js以對象為索引的關聯(lián)數(shù)組

    js以對象為索引的關聯(lián)數(shù)組

    在代碼邏輯中更多的是用關聯(lián)數(shù)組的方式。但即使是這樣我們也很少使用對象類型作為鍵值對的鍵名。
    2010-07-07
  • webpack-loader的使用詳解

    webpack-loader的使用詳解

    webpack默認只能處理js其他的像css,圖片都需要借助loader來處理,這篇文章主要介紹了webpack-loader的使用詳解,需要的朋友可以參考下
    2024-04-04
  • 教你3分鐘利用原生js實現(xiàn)有進度監(jiān)聽的文件上傳預覽組件

    教你3分鐘利用原生js實現(xiàn)有進度監(jiān)聽的文件上傳預覽組件

    這篇文章主要給大家介紹了關于如何3分鐘利用原生js實現(xiàn)有進度監(jiān)聽的文件上傳預覽組件的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用js具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • JS實現(xiàn)隊列與堆棧的方法

    JS實現(xiàn)隊列與堆棧的方法

    這篇文章主要介紹了JS實現(xiàn)隊列與堆棧的方法,結合實例形式分析了JavaScript實現(xiàn)隊列與堆棧的原理與相關實現(xiàn)技巧,需要的朋友可以參考下
    2016-04-04
  • 深入理解JS DOM事件機制

    深入理解JS DOM事件機制

    下面小編就為大家?guī)硪黄钊肜斫釰S DOM事件機制。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • js實現(xiàn)導航跟隨效果

    js實現(xiàn)導航跟隨效果

    這篇文章主要為大家詳細介紹了js實現(xiàn)導航跟隨效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Ajax驗證用戶名或昵稱是否已被注冊

    Ajax驗證用戶名或昵稱是否已被注冊

    本文主要介紹了Ajax驗證用戶名或昵稱是否已被注冊的實例方法。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-04-04
  • 微信小程序使用template標簽實現(xiàn)五星評分功能

    微信小程序使用template標簽實現(xiàn)五星評分功能

    這篇文章主要為大家詳細介紹了微信小程序使用template標簽實現(xiàn)五星評分功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11

最新評論