System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
本申請涉及前端,具體而言,涉及一種網(wǎng)頁的更新方法、裝置、電子設(shè)備及存儲介質(zhì)。
技術(shù)介紹
1、在網(wǎng)頁定制化開發(fā)領(lǐng)域中,用戶通常不希望網(wǎng)頁產(chǎn)品展示與原始生產(chǎn)商關(guān)聯(lián)的任何品牌信息,需要使用其他信息代替。隨著網(wǎng)頁產(chǎn)品復(fù)雜度的提升,以及實際使用者的數(shù)量增多,品牌信息的替換數(shù)量不斷增加,個性化品牌信息的使用者和原始生產(chǎn)商之間的溝通成本逐漸增加,這種情況一方面降低了原始網(wǎng)頁產(chǎn)品標準化的效率,另一方面也容易引發(fā)由于人工溝通錯誤導(dǎo)致產(chǎn)品難以滿足用戶的實際需求的問題,因此,自動化更新定制化網(wǎng)頁產(chǎn)品變得異常重要。
2、現(xiàn)有的定制化網(wǎng)頁生產(chǎn),是直接根據(jù)用戶需求生產(chǎn)網(wǎng)頁,或者開發(fā)定制化接口進行網(wǎng)頁產(chǎn)品的交付,或者采用響應(yīng)攔截替換技術(shù),但是,這些方法都存在很多弊端,例如,直接生產(chǎn)定制化網(wǎng)頁必須要等待定制信息確定之后才能進行生產(chǎn),極大的影響了網(wǎng)頁的生產(chǎn)效率,而定制化接口的使用會導(dǎo)致網(wǎng)頁的業(yè)務(wù)邏輯耦合大量定制化需求和功能,響應(yīng)攔截技術(shù)則只能保證通過異步的?javascript和xml(asynchronous?javascript?and?xml,ajax)技術(shù)請求后端服務(wù)時,數(shù)據(jù)中的品牌信息可以被替換掉,無法實現(xiàn)替換前端硬編碼中的文字或圖片。
技術(shù)實現(xiàn)思路
1、本申請實施例的目的在于提供一種網(wǎng)頁的更新方法、裝置、電子設(shè)備及存儲介質(zhì),并實現(xiàn)對網(wǎng)頁的定制化更新,使得網(wǎng)頁更新不會受到網(wǎng)頁標準化的束縛,滿足用戶對網(wǎng)頁的定制化需求,縮短定制化網(wǎng)頁的時間。
2、第一方面,本申請實施例提供了一種網(wǎng)頁的
3、所述客戶端向服務(wù)器發(fā)送獲取配置規(guī)則集的同步請求;
4、基于從所述服務(wù)器獲取的配置規(guī)則集,監(jiān)聽當(dāng)前網(wǎng)頁的dom樹;
5、當(dāng)監(jiān)聽到所述當(dāng)前網(wǎng)頁的dom樹發(fā)生變化時,根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的dom樹進行修改,得到修改后的dom樹;
6、基于所述修改后的dom樹更新當(dāng)前網(wǎng)頁。
7、在上述實現(xiàn)過程中,實時監(jiān)聽網(wǎng)頁的dom樹,在監(jiān)聽到變化時針對不同的變化對dom樹進行修改,并實現(xiàn)對網(wǎng)頁的定制化更新,使得網(wǎng)頁更新不會受到網(wǎng)頁標準化的束縛,滿足用戶對網(wǎng)頁的定制化需求,縮短定制化網(wǎng)頁的時間。
8、進一步地,所述根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的dom樹進行修改,得到修改后的dom樹的步驟之前,還包括:
9、獲取所述當(dāng)前網(wǎng)頁的dom樹發(fā)生變化時的監(jiān)聽變化數(shù)據(jù);
10、判斷所述監(jiān)聽變化數(shù)據(jù)是否符合所述配置規(guī)則集的配置規(guī)則;
11、在所述監(jiān)聽變化數(shù)據(jù)符合所述配置規(guī)則集的配置規(guī)則的情況下,根據(jù)所述監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的dom樹進行修改。
12、在上述實現(xiàn)過程中,判斷監(jiān)聽變化數(shù)據(jù)是否符合配置規(guī)則,當(dāng)監(jiān)聽變化數(shù)據(jù)符合配置規(guī)則的情況下,再對網(wǎng)頁的dom樹進行修改,可以確保修改是符合配置規(guī)則的,避免出現(xiàn)修改不符合要求導(dǎo)致網(wǎng)頁不合規(guī)的情況。
13、進一步地,所述根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的dom樹進行修改,得到修改后的dom樹的步驟,包括:
14、根據(jù)回調(diào)函數(shù)獲得所述監(jiān)聽變化數(shù)據(jù)中發(fā)生變化的子節(jié)點;
15、根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的dom樹進行文字替換,根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的dom樹進行圖片替換,得到所述修改后的dom樹。
16、在上述實現(xiàn)過程中,利用回調(diào)函數(shù)得到監(jiān)聽變化數(shù)據(jù)中發(fā)生變化的子節(jié)點,并根據(jù)子節(jié)點對dom樹中的文字、圖片進行替換,可以提高替換效率,確保替換的完整性。
17、進一步地,所述根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的dom樹進行文字替換的步驟,包括:
18、判斷所述發(fā)生變化的子節(jié)點是否包含第一關(guān)鍵詞;
19、在所述發(fā)生變化的子節(jié)點包含第一關(guān)鍵詞的情況下,將所述第一關(guān)鍵詞替換為第二關(guān)鍵詞。
20、在上述實現(xiàn)過程中,將發(fā)生變化的子節(jié)點中的第一關(guān)鍵詞替換為第二關(guān)鍵詞,可以提高替換的準確性,避免發(fā)生變化的子節(jié)點出現(xiàn)替換紕漏。
21、進一步地,所述根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的dom樹進行圖片替換的步驟,包括:
22、判斷所述發(fā)生變化的子節(jié)點的標簽名稱屬性是否為圖片格式;
23、若是,判斷所述發(fā)生變化的子節(jié)點的路徑屬性是否與所述配置規(guī)則集中的配置規(guī)則相互匹配,若所述路徑屬性與配置規(guī)則集中的配置規(guī)則相互匹配,對所述發(fā)生變化的子節(jié)點的路徑進行替換;
24、若否,則不對所述當(dāng)前網(wǎng)頁的dom樹進行圖片替換。
25、在上述實現(xiàn)過程中,當(dāng)發(fā)生變化的子節(jié)點的標簽名稱屬性為圖片格式時,將發(fā)生變化的子節(jié)點的路徑分別進行替換,可以提高替換后路徑的準確性和安全性。
26、進一步地,所述對所述發(fā)生變化的子節(jié)點的路徑進行替換的步驟,包括:
27、根據(jù)版本號正則表達式去掉所述發(fā)生變化的子節(jié)點的路徑中的版本號;
28、對去掉版本號的子節(jié)點的路徑進行替換。
29、在上述實現(xiàn)過程中,將發(fā)生變化的子節(jié)點的版本號通過正則表達式匹配進行去除,再進一步對其路徑進行替換,避免替換版本號的過程中出現(xiàn)誤差,提高對路徑的替換效率。
30、進一步地,所述對去掉版本號的子節(jié)點的路徑進行替換的步驟,包括:
31、獲取后綴格式;
32、根據(jù)隨機函數(shù)生成路徑隨機數(shù);
33、將所述后綴格式和所述路徑隨機數(shù)添加至所述去掉版本號的子節(jié)點的路徑。
34、在上述實現(xiàn)過程中,將后綴格式和路徑隨機數(shù)添加至去掉版本號的子節(jié)點的路徑,避免替換后的路徑被緩存而無法更新。
35、第二方面,本申請實施例還提供了一種網(wǎng)頁的更新裝置,所述裝置包括:
36、發(fā)送模塊,用于所述客戶端向服務(wù)器發(fā)送獲取配置規(guī)則集的同步請求;
37、監(jiān)聽模塊,用于基于從所述服務(wù)器獲取的配置規(guī)則集,監(jiān)聽當(dāng)前網(wǎng)頁的dom樹;
38、修改模塊,用于當(dāng)監(jiān)聽到所述當(dāng)前網(wǎng)頁的dom樹發(fā)生變化時,根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的dom樹進行修改,得到修改后的dom樹;
39、更新模塊,用于基于所述修改后的dom樹更新當(dāng)前網(wǎng)頁。
40、在上述實現(xiàn)過程中,實時監(jiān)聽網(wǎng)頁的dom樹,在監(jiān)聽到變化時針對不同的變化對dom樹進行修改,并實現(xiàn)對網(wǎng)頁的定制化更新,使得網(wǎng)頁更新不會受到網(wǎng)頁標準化的束縛,滿足用戶對網(wǎng)頁的定制化需求,縮短定制化網(wǎng)頁的時間。
41、第三方面,本申請實施例提供的網(wǎng)頁的更新系統(tǒng),所述系統(tǒng)包括:客戶端和服務(wù)器;
42、所述客戶端用于發(fā)送獲取配置規(guī)則集的同步請求;
43、所述服務(wù)器用于響應(yīng)發(fā)自所述客戶端的所述同步請求,并發(fā)送配置規(guī)則集至所述客戶端;
44、所述客戶端還用于接收發(fā)自所述服務(wù)器的配置規(guī)則集,并基于所述配置規(guī)則集,監(jiān)聽當(dāng)前網(wǎng)頁的dom樹;當(dāng)監(jiān)聽到所述當(dāng)前網(wǎng)頁的dom樹發(fā)生變化時,根據(jù)監(jiān)聽變化本文檔來自技高網(wǎng)...
【技術(shù)保護點】
1.一種網(wǎng)頁的更新方法,適用于客戶端,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的DOM樹進行修改,得到修改后的DOM樹的步驟之前,還包括:
3.根據(jù)權(quán)利要求1所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的DOM樹進行修改,得到修改后的DOM樹的步驟,包括:
4.根據(jù)權(quán)利要求3所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的DOM樹進行文字替換的步驟,包括:
5.根據(jù)權(quán)利要求3所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的DOM樹進行圖片替換的步驟,包括:
6.根據(jù)權(quán)利要求5所述的網(wǎng)頁的更新方法,其特征在于,所述對所述發(fā)生變化的子節(jié)點的路徑進行替換的步驟,包括:
7.根據(jù)權(quán)利要求6所述的網(wǎng)頁的更新方法,其特征在于,所述對去掉版本號的子節(jié)點的路徑進行替換的步驟,包括:
8.一種網(wǎng)頁的更新裝置,應(yīng)用于客戶端,其特征在于,所述裝置包括:
10.一種電子設(shè)備,其特征在于,包括存儲器及處理器,所述存儲器用于存儲計算機程序,所述處理器運行所述計算機程序以使所述電子設(shè)備執(zhí)行根據(jù)權(quán)利要求1至7中任一項所述的網(wǎng)頁的更新方法。
11.一種存儲介質(zhì),其特征在于,其存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1至7中任一項所述的網(wǎng)頁的更新方法。
...【技術(shù)特征摘要】
1.一種網(wǎng)頁的更新方法,適用于客戶端,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的dom樹進行修改,得到修改后的dom樹的步驟之前,還包括:
3.根據(jù)權(quán)利要求1所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)監(jiān)聽變化數(shù)據(jù)對所述當(dāng)前網(wǎng)頁的dom樹進行修改,得到修改后的dom樹的步驟,包括:
4.根據(jù)權(quán)利要求3所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的dom樹進行文字替換的步驟,包括:
5.根據(jù)權(quán)利要求3所述的網(wǎng)頁的更新方法,其特征在于,所述根據(jù)所述發(fā)生變化的子節(jié)點對所述當(dāng)前網(wǎng)頁的dom樹進行圖片替換的步驟,包括:
6.根據(jù)權(quán)利要...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:姬崢崎,童兆豐,樊興華,薛鋒,
申請(專利權(quán))人:北京微步在線科技有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。