程;
[0089] 對于獲取到的下載失敗列表,本發(fā)明實施例則將所述下載鏈接,與下載失敗列表 中記錄的針對各個下載鏈接的切換失敗的情況進行匹配分析。
[0090] 如果判斷對于當前內(nèi)核觸發(fā)的下載鏈接,不采用當前內(nèi)核的下載組件,而切換到 其他下載組件去執(zhí)行下載過程將會失敗時,則將當前內(nèi)核觸發(fā)的下載鏈接采用當前內(nèi)核的 下載組件執(zhí)行下載過程,不再切換到其他下載組件中執(zhí)行下載過程。在本發(fā)明實施例中,則 可判斷對于所述下載鏈接,切換到某一其他下載組件A下載失敗次數(shù)達到失敗閾值之后, 則確定不再切換到下載組件A以根據(jù)所述下載鏈接執(zhí)行下載過程。其他情況以此類推。
[0091] 如果所述下載失敗列表中對于當前內(nèi)核觸發(fā)的下載鏈接,沒有切換失敗情況的記 錄,則繼續(xù)切換到與當前內(nèi)核下載組件相對的其他下載組件中執(zhí)行下載過程。
[0092] 步驟130,當采用一切換后的下載組件根據(jù)所述下載鏈接執(zhí)行下載過程失敗之后, 將下載失敗的狀態(tài)更新到所述下載失敗列表中。
[0093] 對于將當前內(nèi)核觸發(fā)的下載鏈接,切換到其他下載組件后,如果判斷其他下載組 件通過所述下載鏈接執(zhí)行下載過程失敗,比如無法鏈接到服務器、下載超時等表示下載失 敗的結(jié)構(gòu),則會將切換下載組件的下載失敗狀態(tài)更新到前述下載失敗列表中。
[0094] 所述下載失敗的狀態(tài)包括:下載鏈接、觸發(fā)下載鏈接的內(nèi)核、切換后的下載組件 身份。比如下載鏈接為WWW.aaa.com/abnx. ij/101020/3. mp3,觸發(fā)下載鏈接的內(nèi)核為ie 內(nèi)核,切換后的下載組件身份為Chrome內(nèi)核的下載組件。那么下載失敗列表中,則會以上 述下載鏈接為關鍵詞,更新其切換后的下載失敗狀態(tài),比如在當次下載失敗之前的表一如 下:
【主權(quán)項】
1. 一種瀏覽器下載文件的方法,包括: 瀏覽器當前內(nèi)核觸發(fā)下載鏈接后,獲取下載失敗列表; 根據(jù)所述下載失敗列表,選擇確定是否切換另一內(nèi)核的下載組件或者切換到獨立于瀏 覽器的下載組件,根據(jù)所述下載鏈接執(zhí)行下載過程; 當采用一切換后的下載組件根據(jù)所述下載鏈接執(zhí)行下載過程失敗之后,將下載失敗的 狀態(tài)更新到所述下載失敗列表中。
2. 如權(quán)利要求1所述的方法,其特征在于,所述當采用一切換后的下載組件根據(jù)所述 下載鏈接執(zhí)行下載過程失敗之后,將下載失敗的狀態(tài)更新到所述下載失敗列表中包括: W當前內(nèi)核的下載鏈接為關鍵字段,在所述下載失敗列表中記錄切換到另一下載組件 后下載失敗的次數(shù)。
3. 如權(quán)利要求2所述的方法,其特征在于,W當前內(nèi)核的下載鏈接為關鍵字段,記錄切 換到另一下載組件后下載失敗的次數(shù)包括: 提取所述當前內(nèi)核的下載鏈接的主域名; 查找所述下載失敗列表中是否有該主域名; 如果所述下載失敗列表中有所述主域名,則判斷所述主域名下是否有切換后的所述下 載組件字段; 如果所述主域名下有切換后的所述下載組件字段,則在該下載字段下的失敗次數(shù)上加 1 ; 如果所述主域名下沒有記有切換后的所述下載組件字段,則添加所述下載組件字段, 并在所述下載組件字段下記錄切換失敗次數(shù); 如果所述下載失敗列表中沒有所述主域名,則添加所述主域名,并在所述主域名下添 加所述切換后的下載組件字段,W在所述下載組件字段下記錄切換失敗次數(shù)。
4. 如權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述下載失敗列表,選擇確定是否 切換另一內(nèi)核的下載組件或者切換到獨立于瀏覽器的下載組件,根據(jù)所述下載鏈接執(zhí)行下 載過程包括: 提取所述下載鏈接的主域名,將所述主域名與下載失敗列表中的主域名進行匹配; 如果主域名與下載失敗列表中的主域名沒匹配上,則切換另一內(nèi)核的下載組件或者切 換到獨立于瀏覽器的下載組件,W根據(jù)所述下載鏈接執(zhí)行下載過程; 如果主域名與下載失敗列表中的主域名匹配上,則判斷所述下載失敗列表中所述主域 名下是否存在未記錄的下載組件; 如果存在未記錄的下載組件,則切換到所述未記錄的下載組件中的一個W根據(jù)所述下 載鏈接執(zhí)行下載過程; 如果不存在未記錄的下載組件,則判斷是否存在下載失敗次數(shù)小于失敗闊值的下載組 件; 如果存在下載失敗次數(shù)小于失敗闊值的下載組件,則切換到所述失敗次數(shù)小于失敗闊 值的下載組件中的一個,W根據(jù)所述下載鏈接執(zhí)行下載過程; 如果不存在下載失敗次數(shù)小于失敗闊值的下載組件,則不切換到另一下載組件,采用 當前內(nèi)核的下載組件W根據(jù)所述下載鏈接執(zhí)行下載過程執(zhí)行下載過程。
5. 如權(quán)利要求3所述的方法,其特征在于,還包括: 判斷瀏覽器當前內(nèi)核觸發(fā)的鏈接是否為下載鏈接。
6. 如權(quán)利要求5所述的方法,其特征在于,所述判斷瀏覽器當前內(nèi)核觸發(fā)的鏈接是否 為下載鏈接包括: 根據(jù)瀏覽器當前內(nèi)核發(fā)送的HTTP請求頭部的文件類型字段的值,當所述文件類型字 段的值為瀏覽器內(nèi)核不能解析為在頁面中展示的類型時,則判斷所述對應的鏈接為下載鏈 接。 和/或,根據(jù)服務器針對當前內(nèi)核發(fā)送的HTTP請求反饋的HTPP響應中的文件類型字 段的值,當所述文件類型字段的值為瀏覽器內(nèi)核不能解析為在頁面中展示的類型時,則判 斷所述對應的鏈接為下載鏈接。
7. 如權(quán)利要求1所述的方法,其特征在于,在根據(jù)所述下載鏈接執(zhí)行下載過程之前,還 包括: 檢測所述下載鏈接是否安全;如果所述下載鏈接不安全,則提示用戶是否繼續(xù)下載。
8. 如權(quán)利要求1所述的方法,其特征在于,在根據(jù)所述下載鏈接執(zhí)行下載過程之前還 包括: 判斷所述下載鏈接對應的refer鏈中的各個鏈接是否安全;如果所述下載鏈接對應的 refer鏈中的各個鏈接不安全,則提示用戶是否繼續(xù)進行下載。
9. 一種瀏覽器客戶端,包括: 網(wǎng)絡組件,適于根據(jù)下載鏈接發(fā)送網(wǎng)絡請求,從服務器獲取數(shù)據(jù); 下載組件,包括: 列表獲取模組,適于瀏覽器當前內(nèi)核觸發(fā)下載鏈接后,獲取下載失敗列表; 內(nèi)核切換模組,適于根據(jù)所述下載失敗列表,選擇確定是否切換另一內(nèi)核的下載組件 或者切換到獨立于瀏覽器的下載組件,根據(jù)所述下載鏈接調(diào)用網(wǎng)絡組件執(zhí)行下載過程; 列表更新模組,適于當采用一切換后的下載組件根據(jù)所述下載鏈接執(zhí)行下載過程失敗 之后,將下載失敗的狀態(tài)更新到所述下載失敗列表中。
10. -種帶有瀏覽器信息分享裝置的系統(tǒng),包括: 處理器,W及加載有多條可執(zhí)行指令的存儲器,所述多條指令包括執(zhí)行W下步驟的方 法: 瀏覽器當前內(nèi)核觸發(fā)下載鏈接后,獲取下載失敗列表; 根據(jù)所述下載失敗列表,選擇確定是否切換另一內(nèi)核的下載組件或者切換到獨立于瀏 覽器的下載組件,根據(jù)所述下載鏈接執(zhí)行下載過程; 當采用一切換后的下載組件根據(jù)所述下載鏈接執(zhí)行下載過程失敗之后,將下載失敗的 狀態(tài)更新到所述下載失敗列表中。
【專利摘要】本發(fā)明公開了一種瀏覽器下載文件的方法,涉及瀏覽器技術領域。所述方法包括:瀏覽器當前內(nèi)核觸發(fā)下載鏈接后,獲取下載失敗列表;根據(jù)所述下載失敗列表,選擇確定是否切換另一內(nèi)核的下載組件或者切換到獨立于瀏覽器的下載組件,根據(jù)所述下載鏈接執(zhí)行下載過程;當采用一切換后的下載組件根據(jù)所述下載鏈接執(zhí)行下載過程失敗之后,將下載失敗的狀態(tài)更新到所述下載失敗列表中。由此解決了對某一鏈接在切換內(nèi)核進行下載時,下載會一直失敗的問題,取得了在內(nèi)核觸發(fā)下載鏈接后,對于可能下載失敗的切換動作不予執(zhí)行,避免切換下載組件導致下載失敗,并且可以智能對切換狀態(tài)進行修正的有益效果。
【IPC分類】G06F17-30
【公開號】CN104537020
【申請?zhí)枴緾N201410797652
【發(fā)明人】楊曉兵
【申請人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司
【公開日】2015年4月22日
【申請日】2014年12月18日