一種腳本文件的更新方法及裝置制造方法
【專利摘要】本發明公開了一種腳本文件的更新方法,包括:請求腳本文件;檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致;若所述檢測的結果為是,應用所述語法樹緩存區中所述腳本文件對應的語法樹;若所述檢測的結果為否,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。本發明還公開了一種腳本文件的更新裝置。可使瀏覽器在使用語法樹緩存區時實時更新請求的腳本文件,提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
【專利說明】一種腳本文件的更新方法及裝置
【技術領域】
[0001]本發明涉及通信領域,尤其涉及一種腳本文件的更新方法及裝置。
【背景技術】
[0002]目前,隨著網速的提升,用戶對于終端瀏覽器的瀏覽速度需求也逐漸提升。當終端瀏覽器需要展現一個網頁時,首先需要調取網頁的腳本文件,瀏覽器的可根據腳本文件解析生成語法樹,從而可運用腳本展現網頁。當多個網頁需要應用到同一腳本文件時,可在終端瀏覽器中建立緩存區,用于緩存腳本文件解析后的語法樹,以避免腳本文件的重復解析過程,用以提高瀏覽的實時性。
[0003]但是,當網頁需要引用的腳本文件發生變化時,如腳本文件對應的語法樹已經緩存在終端瀏覽器的緩存區中,但該腳本文件在前端被修改或被更新,而在緩存區中對應的語法樹無法得到相應的修改或更新,終端瀏覽器依舊使用未被修改或舊版本的語法樹,會導致用戶瀏覽的延后性,降低了用戶體驗。
【發明內容】
[0004]本發明提供一種腳本文件的更新方法及裝置。可使瀏覽器在使用語法樹緩存區時實時更新請求的腳本文件,提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
[0005]一方面,本發明的實施例提供了一種腳本文件的更新方法,包括:
[0006]請求腳本文件;
[0007]檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致;
[0008]若所述檢測的結果為是,應用所述語法樹緩存區中所述腳本文件對應的語法樹;
[0009]若所述檢測的結果為否,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。
[0010]另一方面,本發明的實施例提供了一種腳本文件的更新裝置,包括:
[0011 ] 請求模塊,用于請求腳本文件;
[0012]檢測模塊,用于檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致;
[0013]應用模塊,用于當所述檢測模塊的檢測結果為是時,應用所述語法樹緩存區中所述腳本文件對應的語法樹;
[0014]保存模塊,用于當所述檢測模塊的檢測結果為否時,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。
[0015]通過檢測所需腳本文件的最后修改時間與在語法樹緩存區中對應的語法樹的最后修改時間是否一致,可檢測出所需腳本文件是否有修改或更新,當檢測出腳本文件有修改或更新時,實時將最新的腳本文件解析成語法樹,并將解析后的語法樹保存在語法樹緩存區中,即完成了腳本文件的實時更新,同時瀏覽器也可實時應用到最新的腳本文件對應的語法樹。提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
【專利附圖】
【附圖說明】
[0016]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
[0017]圖1是本發明中一種腳本文件的更新方法的一實施例的流程圖;
[0018]圖2是本發明中一種腳本文件的更新方法的另一實施例的流程圖;
[0019]圖3是本發明中一種腳本文件的更新方法的又一實施例的流程圖;
[0020]圖4是本發明中一種腳本文件的更新裝置的一實施例的結構圖;
[0021]圖5是本發明中一種腳本文件的更新裝置的另一實施例的結構圖。
【具體實施方式】
[0022]下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0023]下面參考附圖對本發明的實施例進行描述。參見圖1,為本發明中一種腳本文件的更新方法的一實施例的流程圖。
[0024]步驟S101,請求腳本文件。
[0025]本發明實施例中,瀏覽器需展現網頁時,首先需請求腳本文件,并根據腳本文件解析生成語法樹,從而初始化網頁中腳本文件的語法樹。由于有些腳本文件過于龐大或使用率較高,可將腳本文件存儲在本地終端中;腳本文件也可存儲在網絡服務端中;從而瀏覽器可向本地終端或網絡服務端請求腳本文件。其中,本地終端可包括:移動終端,個人電腦、機頂盒、數字電視一體機、網絡協議電視(IPTV, Internet Protocol Television)等能夠使用瀏覽器網頁展現的終端。
[0026]步驟S102,檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致。
[0027]本發明實施例中,瀏覽器將腳本文件解析生成對應的語法樹后,將語法樹保存至語法樹緩存區中,以便瀏覽器再次需要該腳本時,可省略解析等步驟,從而加快了網頁展現的速率。
[0028]當瀏覽器需要腳本文件時,可檢測該腳本文件是否發生更新或修改,其中,可用腳本文件的最后修改時間體現腳本文件的更新或修改,由于在語法樹緩存區中保留有上次使用的腳本文件解析出的語法樹,進而可將語法樹的最后修改時間與請求腳本的最后修改時間進行對比,從而可檢測出腳本文件是否發生更新或修改。其中,瀏覽器可從本地終端獲取請求腳本文件的最后修改時間;也可將存儲的語法樹的最后修改時間發送至網絡服務端,由網絡服務端對比兩個修改時間是否一致,并反饋檢測信息,瀏覽器可根據檢測信息檢測出腳本文件是否有更新或修改。[0029]步驟S103,當步驟S102中的檢測結果為是時,應用所述語法樹緩存區中所述腳本文件對應的語法樹。
[0030]本發明實施例中,當檢測室腳本文件的最后修改時間與語法樹的最后修改時間一致時,即表示腳本文件未發生更新或修改。可省略解析等步驟,直接應用存儲在語法樹緩存區中的腳本文件對應的語法樹,從而可展現網頁。
[0031]步驟S104,當步驟S102中的檢測結果為否時,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。
[0032]本發明實施例中,當檢測室腳本文件的最后修改時間與語法樹的最后修改時間不一致時,即表示腳本文件發生了更新或修改。從而需要更新語法樹緩存區中的語法樹,獲取請求腳本文件的源數據,根據腳本文件的源數據即可解析出腳本文件的語法樹,即語法樹進行了同步更新,并將語法樹保存至語法樹緩存區中,以完成語法樹緩存區中語法樹的實時更新。
[0033]通過檢測所需腳本文件的最后修改時間與在語法樹緩存區中對應的語法樹的最后修改時間是否一致,可檢測出所需腳本文件是否有修改或更新,當檢測出腳本文件有修改或更新時,實時將最新的腳本文件解析成語法樹,并將解析后的語法樹保存在語法樹緩存區中,即完成了腳本文件的實時更新,同時瀏覽器也可實時應用到最新的腳本文件對應的語法樹。提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
[0034]下面可參見圖2對瀏覽器更新本地終端的請求文件進行詳細描述。
[0035]步驟S201,請求本地腳本文件。
[0036]本發明實施例中,瀏覽器需展現網頁時,首先需請求腳本文件,并根據腳本文件解析生成語法樹,從而初始化網頁中腳本文件的語法樹。由于有些腳本文件過于龐大或使用率較高,可將腳本文件存儲在本地終端中。從而瀏覽器可向本地終端或網絡服務端請求腳本文件。其中,本地終端可包括:移動終端,個人電腦、機頂盒、數字電視一體機、網絡協議電視(IPTV, Internet Protocol Television)等能夠使用瀏覽器網頁展現的終端。
[0037]步驟S202,檢測本地腳本文件對應的語法樹是否保存在所述語法樹緩存區中。
[0038]本發明實施例中,瀏覽器可檢測是否之前引用過該腳本文件,若引用過該腳本文件,即腳本文件解析出的語法樹已保存在語法樹緩存區中,可進行步驟S203,若語法樹緩存區中沒有腳本文件對應的語法樹,即可進行步驟S206-S208。
[0039]步驟S203,獲取所述本地腳本文件的最后修改時間。
[0040]本發明實施例中,當瀏覽器需要向本地終端請求腳本文件時,即本地終端中保存有該腳本文件,并可進行實時更新,從而能夠從本地終端中獲取腳本文件的最后修改時間。
[0041]步驟S204,檢測所述最后修改時間是否與所述語法樹緩存區中所述本地腳本文件對應的語法樹的最后修改時間一致。
[0042]本發明實施例中,當瀏覽器需要本地腳本文件時,可檢測該本地腳本文件是否發生更新或修改,其中,可用腳本文件的最后修改時間體現腳本文件的更新或修改,由于在語法樹緩存區中保留有上次使用的腳本文件解析出的語法樹,進而可將語法樹的最后修改時間與請求腳本的最后修改時間進行對比,從而可檢測出本地腳本文件是否發生更新或修改。若檢測出最后修改時間一致,即表明本地腳本文件無更新或修改,可進行步驟S205,若檢測出最后修改時間不一致,即表明本地腳本文件有更新或修改,可進行步驟S206-S208。[0043]步驟S205,當步驟S204的檢測結果為是時,應用所述語法樹緩存區中本地腳本文件對應的語法樹。
[0044]本發明實施例中,當檢測室腳本文件的最后修改時間與語法樹的最后修改時間一致時,即表示腳本文件未發生更新或修改。可省略解析等步驟,直接應用存儲在語法樹緩存區中的腳本文件對應的語法樹,從而可展現網頁。
[0045]步驟S206,當步驟S204的檢測結果為否時,獲取本地腳本文件的源數據。
[0046]本發明實施例中,當根據從本地終端獲取的最后修改時間,檢測到本地腳本文件有更新或修改時,要重新生成更新后的本地腳本文件對應的語法樹。從本地終端獲取由終端保存的腳本文件的源數據,以進行如下步驟。
[0047]步驟S207,將本地腳本文件的源數據解析成本地腳本文件對應的語法樹。
[0048]本發明實施例中,獲取到本地腳本文件的源數據后,瀏覽器可對本地腳本文件的源數據進行解析,從而生成本地腳本文件對應的語法樹。
[0049]步驟S208,將本地腳本文件對應的語法樹保存至所述語法樹緩存區中。
[0050]本發明實施例中,將根據更新后的本地腳本文件生成的語法樹保存在語法樹緩存區中,可完成語法樹緩存區中語法樹的實時更新。
[0051]通過檢測所需腳本文件的最后修改時間與在語法樹緩存區中對應的語法樹的最后修改時間是否一致,可檢測出所需腳本文件是否有修改或更新,當檢測出腳本文件有修改或更新時,實時將最新的腳本文件解析成語法樹,并將解析后的語法樹保存在語法樹緩存區中,即完成了腳本文件的實時更新,同時瀏覽器也可實時應用到最新的腳本文件對應的語法樹。提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
[0052]下面參考圖3對對瀏覽器更新網絡終端的請求文件進行詳細描述。
[0053]步驟S301,請求網絡腳本文件。
[0054]本發明實施例中,瀏覽器需展現網頁時,首先需請求腳本文件,并根據腳本文件解析生成語法樹,從而初始化網頁中腳本文件的語法樹。其中,腳本文件可存儲在網絡服務端中,瀏覽器可向服務端發出下載請求以請求網絡腳本文件。
[0055]步驟S302,檢測網絡腳本文件對應的語法樹是否保存在所述語法樹緩存區中。
[0056]本發明實施例中,瀏覽器可檢測是否之前引用過該腳本文件,若引用過該腳本文件,即腳本文件解析出的語法樹已保存在語法樹緩存區中,可進行步驟S303,若語法樹緩存區中沒有腳本文件對應的語法樹,即可進行步驟S307-S309。
[0057]步驟S303,將所述語法樹緩存區中的網絡腳本文件對應的語法樹的最后修改時間發送至服務端。
[0058]本發明實施例中,當瀏覽器需要腳本文件時,可通過服務端檢測該腳本文件是否發生更新或修改,其中,可用腳本文件的最后修改時間體現腳本文件的更新或修改,由于在語法樹緩存區中保留有上次使用的網絡腳本文件解析出的語法樹,進而可將語法樹的最后修改時間發送至服務端,使服務端將其與請求網絡腳本文件的最后修改時間進行對比,從而可檢測出腳本文件是否發生更新或修改。
[0059]步驟S304,獲取由服務端反饋的檢測信息;其中,所述檢測信息包括一致信息及不一致信息。
[0060]本發明實施例中,瀏覽器可將語法樹緩存區中網絡腳本文件對應的語法樹的最后修改時間發送至服務端,使服務端進行判斷,語法樹的修改時間是否與服務端中存儲的網絡腳本文件的最后修改時間一致,并將檢測信息反饋給瀏覽器。
[0061]其中,檢測信息包括服務端檢測到兩個時間一致的信息及兩個時間不一致的信息。若服務端檢測到語法樹的最后修改時間與網絡腳本文件的最后修改時間一致,則表明網絡腳本文件并未發生更新或修改,則可反饋給瀏覽器一致信息。或服務端檢測到語法樹的最后修改時間與網絡腳本文件的最后修改時間不一致,則表明網絡腳本文件發生更新或修改,則可反饋給瀏覽器不一致信息。
[0062]步驟S305,根據獲取的所述檢測信息,判斷所述網絡腳本文件的最后修改時間是否與所述語法樹緩存區中的所述網絡腳本文件對應的語法樹的最后修改時間一致。
[0063]本發明實施例中,一致信息可為瀏覽器與服務端協商指定的信息,如通過HTTP協議傳輸,可采用錯誤碼304,即瀏覽器獲取304的信息時,即可判斷網絡腳本文件未發生改變。不一致信息可為網絡腳本文件在服務端的源數據,即瀏覽器獲取到源數據信息時,即可判斷網絡腳本文件發生改變,需更新語法樹。
[0064]步驟S306,當步驟S305的判斷結果為是時,應用所述語法樹緩存區中網絡腳本文件對應的語法樹。
[0065]本發明實施例中,當檢測室腳本文件的最后修改時間與語法樹的最后修改時間一致時,即表示腳本文件未發生更新或修改。可省略解析等步驟,直接應用存儲在語法樹緩存區中的腳本文件對應的語法樹,從而可展現網頁。
[0066]步驟S307,當步驟S305的判斷結果為否時,獲取網絡腳本文件的源數據。
[0067]本發明實施例中,當瀏覽器根據服務端反饋的檢測信息判斷出網絡腳本文件發生更新或修改時,可根據服務器反饋的源數據信息對腳本的源數據進行下載,從而從網絡服務端可獲取網絡腳本文件的源數據。
[0068]步驟S308,將網絡腳本文件的源數據解析成網絡腳本文件對應的語法樹。
[0069]本發明實施例中,獲取到網絡腳本文件的源數據后,瀏覽器可對網絡腳本文件的源數據進行解析,從而生成網絡腳本文件對應的語法樹。
[0070]步驟S309,將網絡腳本文件對應的語法樹保存至所述語法樹緩存區中。
[0071 ] 本發明實施例中,將根據更新后的網絡腳本文件生成的語法樹保存在語法樹緩存區中,可完成語法樹緩存區中語法樹的實時更新。
[0072]通過檢測所需腳本文件的最后修改時間與在語法樹緩存區中對應的語法樹的最后修改時間是否一致,可檢測出所需腳本文件是否有修改或更新,當檢測出腳本文件有修改或更新時,實時將最新的腳本文件解析成語法樹,并將解析后的語法樹保存在語法樹緩存區中,即完成了腳本文件的實時更新,同時瀏覽器也可實時應用到最新的腳本文件對應的語法樹。提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
[0073]參見圖4,為本發明中一種腳本文件的更新裝置的一實施例的結構圖。本發明實施例中,該裝置可包括請求模塊1、檢測模塊2、應用模塊3、保存模塊4。
[0074]請求模塊I,用于請求腳本文件。
[0075]本發明實施例中,瀏覽器需展現網頁時,首先需通過請求模塊I請求腳本文件,并根據腳本文件解析生成語法樹,從而初始化網頁中腳本文件的語法樹。由于有些腳本文件過于龐大或使用率較高,可將腳本文件存儲在本地終端中;腳本文件也可存儲在網絡服務端中;從而瀏覽器可向本地終端或網絡服務端請求腳本文件。其中,本地終端可包括:移動終端,個人電腦、機頂盒、數字電視一體機、網絡協議電視(IPTV, Internet ProtocolTelevision)等能夠使用瀏覽器網頁展現的終端。
[0076]檢測模塊2,用于檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致。
[0077]本發明實施例中,瀏覽器將腳本文件解析生成對應的語法樹后,將語法樹保存至語法樹緩存區中,以便瀏覽器再次需要該腳本時,可省略解析等步驟,從而加快了網頁展現的速率。
[0078]當瀏覽器需要腳本文件時,可通過檢測模塊2檢測該腳本文件是否發生更新或修改,其中,可用腳本文件的最后修改時間體現腳本文件的更新或修改,由于在語法樹緩存區中保留有上次使用的腳本文件解析出的語法樹,進而可將語法樹的最后修改時間與請求腳本的最后修改時間進行對比,從而檢測模塊2可檢測出腳本文件是否發生更新或修改。其中,瀏覽器可從本地終端獲取請求腳本文件的最后修改時間;也可將存儲的語法樹的最后修改時間發送至網絡服務端,由網絡服務端對比兩個修改時間是否一致,并反饋檢測信息,檢測模塊2可根據檢測信息檢測出腳本文件是否有更新或修改。
[0079]應用模塊3,用于當所述檢測模塊2的檢測結果為是時,應用所述語法樹緩存區中所述腳本文件對應的語法樹。
[0080]本發明實施例中,當檢測室腳本文件的最后修改時間與語法樹的最后修改時間一致時,即表示腳本文件未發生更新或修改。應用模塊3可省略解析等步驟,直接應用存儲在語法樹緩存區中的腳本文件對應的語法樹,從而可展現網頁。
[0081]保存模塊4,用于當所述檢測模塊2的檢測結果為否時,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。
[0082]本發明實施例中,當檢測室腳本文件的最后修改時間與語法樹的最后修改時間不一致時,即表示腳本文件發生了更新或修改。從而需要更新語法樹緩存區中的語法樹,獲取請求腳本文件的源數據,根據腳本文件的源數據即可解析出腳本文件的語法樹,即語法樹進行了同步更新,并通過保存模塊4將語法樹保存至語法樹緩存區中,以完成語法樹緩存區中語法樹的實時更新。
[0083]通過檢測所需腳本文件的最后修改時間與在語法樹緩存區中對應的語法樹的最后修改時間是否一致,可檢測出所需腳本文件是否有修改或更新,當檢測出腳本文件有修改或更新時,實時將最新的腳本文件解析成語法樹,并將解析后的語法樹保存在語法樹緩存區中,即完成了腳本文件的實時更新,同時瀏覽器也可實時應用到最新的腳本文件對應的語法樹。提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
[0084]參見圖5,為本發明中一種腳本文件的更新裝置的另一實施例的結構圖。該裝置可獲取本地及網絡兩種來源的腳本文件。其中,上述裝置包括:請求模塊01、第一檢測模塊
02、應用模塊03、保存模塊04、第二檢測模塊05、確認模塊06。
[0085]請求模塊OI,用于請求腳本文件。
[0086]本發明實施例中,請求模塊01可包括本地請求單元011及網絡請求單元012。裝置可通過本地請求單元011請求本地腳本文件;可通過網絡請求單元012請求網絡腳本文件。擴大了腳本文件的請求范圍,從而可更豐富語法樹緩存區中與腳本文件對應的語法樹,提聞展現網頁效率。
[0087]第一檢測模塊02,用于檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致。
[0088]本發明實施例中,第一檢測模塊02可包括時間獲取單元021、檢測單元022、發送單元023、檢測信息獲取單元024、判斷單元025。其中,時間獲取單元021與檢測單元022用于檢測本地腳本文件的最后修改時間是否與對應的語法樹最后修改時間一致;發送單元023、檢測信息獲取單元024、判斷單元025用于檢測網絡腳本文件的最后修改時間是否與對應的語法樹最后修改時間一致。下面對各單元進行詳細描述。
[0089]時間獲取單元021,用于獲取所述本地腳本文件的最后修改時間。
[0090]本發明實施例中,當瀏覽器需要向本地終端請求腳本文件時,即本地終端中保存有該腳本文件,并可進行實時更新,從而時間獲取單元021能夠從本地終端中獲取腳本文件的最后修改時間。
[0091]檢測單元022,用于檢測所述最后修改時間是否與所述語法樹緩存區中所述本地腳本文件對應的語法樹的最后修改時間一致。
[0092]本發明實施例中,當瀏覽器需要本地腳本文件時,可檢測該本地腳本文件是否發生更新或修改,其中,可用腳本文件的最后修改時間體現腳本文件的更新或修改,由于在語法樹緩存區中保留有上次使用的腳本文件解析出的語法樹,進而可將語法樹的最后修改時間與請求腳本的最后修改時間進行對比,從而檢測單元022可檢測出本地腳本文件是否發生更新或修改。
[0093]發送單元023,用于將所述語法樹緩存區中的網絡腳本文件對應的語法樹的最后修改時間發送至服務端。
[0094]本發明實施例中,當瀏覽器需要腳本文件時,可通過服務端檢測該腳本文件是否發生更新或修改,其中,可用腳本文件的最后修改時間體現腳本文件的更新或修改,由于在語法樹緩存區中保留有上次使用的網絡腳本文件解析出的語法樹,進而可通過發送單元023將語法樹的最后修改時間發送至服務端,使服務端將其與請求網絡腳本文件的最后修改時間進行對比,從而可檢測出腳本文件是否發生更新或修改。
[0095]檢測信息獲取單元024,用于獲取由服務端反饋的檢測信息;其中,所述檢測信息包括一致信息及不一致信息。
[0096]本發明實施例中,瀏覽器可將語法樹緩存區中網絡腳本文件對應的語法樹的最后修改時間發送至服務端,使服務端進行判斷,語法樹的修改時間是否與服務端中存儲的網絡腳本文件的最后修改時間一致,并通過監測信息獲取單元024獲取服務端反饋的檢測信
肩、O
[0097]其中,檢測信息包括服務端檢測到兩個時間一致的信息及兩個時間不一致的信息。若服務端檢測到語法樹的最后修改時間與網絡腳本文件的最后修改時間一致,則表明網絡腳本文件并未發生更新或修改,則可反饋給瀏覽器一致信息。或服務端檢測到語法樹的最后修改時間與網絡腳本文件的最后修改時間不一致,則表明網絡腳本文件發生更新或修改,則可反饋給瀏覽器不一致信息。
[0098]判斷單元025,用于根據獲取的所述檢測信息,判斷所述網絡腳本文件的最后修改時間是否與所述語法樹緩存區中的所述網絡腳本文件對應的語法樹的最后修改時間一致。[0099]本發明實施例中,一致信息可為瀏覽器與服務端協商指定的信息,如通過HTTP協議傳輸,可采用錯誤碼304,即瀏覽器獲取304的信息時,即判斷單元025可判斷網絡腳本文件未發生改變。不一致信息可為網絡腳本文件在服務端的源數據,即瀏覽器獲取到源數據信息時,即判斷單元025可判斷網絡腳本文件發生改變,需更新語法樹。
[0100]應用模塊03,用于,用于當所述檢測模塊02的檢測結果為是時,應用所述語法樹緩存區中所述腳本文件對應的語法樹。
[0101]本發明實施例中,當檢測室腳本文件的最后修改時間與語法樹的最后修改時間一致時,即表示腳本文件未發生更新或修改。應用模塊03可省略解析等步驟,直接應用存儲在語法樹緩存區中的腳本文件對應的語法樹,從而可展現網頁。
[0102]保存模塊04,用于當所述檢測模塊02的檢測結果為否時,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。
[0103]本發明實施例中,保存模塊04可包括源數據獲取單元041、解析單元042、保存單元 043。
[0104]源數據獲取單元041,用于獲取所述腳本文件的源數據。
[0105]解析單元042,用于將所述源數據獲取單元獲取的所述腳本文件的源數據解析成所述腳本文件對應的語法樹。
[0106]保存單元043,將所述解析單元解析出的所述腳本文件對應的語法樹保存至所述語法樹緩存區中。
[0107]保存模塊04通過以上單元可完成腳本文件對應的語法樹的實時更新,從而提高了瀏覽器展現網頁的效率。
[0108]第二檢測模塊05,用于檢測所述腳本文件對應的語法樹是否保存在所述語法樹緩存區中。
[0109]確認模塊06,用于確認當第二檢測模塊05的檢測結果為是時,即腳本文件已解析出對應的語法樹,并將其保存在語法樹緩存區中。若在語法樹緩存區中未發現腳本文件對應的語法樹,可通過保存模塊04根據請求的腳本文件的源數據將對應的語法樹保存。
[0110]通過檢測所需腳本文件的最后修改時間與在語法樹緩存區中對應的語法樹的最后修改時間是否一致,可檢測出所需腳本文件是否有修改或更新,當檢測出腳本文件有修改或更新時,實時將最新的腳本文件解析成語法樹,并將解析后的語法樹保存在語法樹緩存區中,即完成了腳本文件的實時更新,同時瀏覽器也可實時應用到最新的腳本文件對應的語法樹。提高了用戶實時瀏覽的效率,從而增強了用戶體驗。
[0111]以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部模塊來實現本實施例方案的目的。本領域普通技術人員在不付出創造性的勞動的情況下,即可以理解并實施。
[0112]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到各實施方式可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件。基于這樣的理解,上述技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品可以存儲在計算機可讀存儲介質中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務端,或者網絡設備等)執行各個實施例或者實施例的某些部分所述的方法。
[0113]以上所述的實施方式,并不構成對該技術方案保護范圍的限定。任何在上述實施方式的精神和原則之內所作的修改、等同替換和改進等,均應包含在該技術方案的保護范圍之內。
【權利要求】
1.一種腳本文件的更新方法,其特征在于,包括: 請求腳本文件; 檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致; 若所述檢測的結果為是,應用所述語法樹緩存區中所述腳本文件對應的語法樹; 若所述檢測的結果為否,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。
2.如權利要求1所述方法,其特征在于,所述請求腳本文件,包括: 請求本地腳本文件;或 請求網絡腳本文件。
3.如權利要求2所述方法,其特征在于,所述檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致,包括: 若所述請求的腳本文件為所述本地腳本文件,獲取所述本地腳本文件的最后修改時間; 檢測所述最后修改時間是否與所述語法樹緩存區中所述本地腳本文件對應的語法樹的最后修改時間一致。
4.如權利要求2所 述方法,其特征在于,所述檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致,包括: 若所述請求的腳本文件為所述網絡腳本文件,將所述語法樹緩存區中的所述網絡腳本文件對應的語法樹的最后修改時間發送至服務端; 獲取由服務端反饋的檢測信息;其中,所述檢測信息包括一致信息及不一致信息; 根據獲取的所述檢測信息,判斷所述網絡腳本文件的最后修改時間是否與所述語法樹緩存區中的所述網絡腳本文件對應的語法樹的最后修改時間一致。
5.如權利要求1-4任一項所述方法,其特征在于,在所述請求腳本文件之后,所述方法還包括: 確認所述腳本文件對應的語法樹保存在所述語法樹緩存區中; 若所述腳本文件對應的語法樹不在所述語法樹緩存區中,執行所述將根據所述腳本文件生成的語法樹保存至所述語法樹緩存區中的步驟。
6.如權利要求5所述方法,其特征在于,所述將根據所述腳本文件生成的語法樹保存至所述語法樹緩存區中,包括: 獲取所述腳本文件的源數據; 將所述腳本文件的源數據解析成所述腳本文件對應的語法樹; 將所述腳本文件對應的語法樹保存至所述語法樹緩存區中。
7.一種腳本文件的更新裝置,其特征在于,包括: 請求模塊,用于請求腳本文件; 檢測模塊,用于檢測所述腳本文件的最后修改時間是否與語法樹緩存區中對應的語法樹的最后修改時間一致; 應用模塊,用于當所述檢測模塊的檢測結果為是時,應用所述語法樹緩存區中所述腳本文件對應的語法樹; 保存模塊,用于當所述檢測模塊的檢測結果為否時,將根據所述腳本文件生成的語法樹保存至語法樹緩存區中。
8.如權利要求7所述裝置,其特征在于,所述請求模塊包括: 本地請求單元,用于請求本地腳本文件; 網絡請求單元,用于請求網絡腳本文件。
9.如權利要求8所述裝置,其特征在于,所述檢測模塊包括: 時間獲取單元,用于當所述本地請求單元請求所述本地腳本文件時,獲取所述本地腳本文件的最后修改時間; 檢測單元,用于檢測所述時間獲取單元獲取的所述最后修改時間是否與所述語法樹緩存區中所述本地腳本文件對應的語法樹的最后修改時間一致。
10.如權利要求8所述裝置,其特征在于,所述檢測模塊包括: 發送單元,用于當所述請求的腳本文件為所述網絡腳本文件時,將所述語法樹緩存區中的所述網絡腳本文件對應的語法樹的最后修改時間發送至服務端; 檢測信息獲取單元,用于獲取由服務端根據所述發送單元發送的所述最后修改時間反饋的檢測信息;其中,所述檢測信息包括一致信息及不一致信息; 判斷單元,用于根據所述監測信息獲取單元獲取的所述檢測信息,判斷所述網絡腳本文件的最后修改時間是否與所述語法樹緩存區中的所述網絡腳本文件對應的語法樹的最后修改時間一致。
11.如權利要 求7-10任一項所述裝置,其特征在于,在所述請求模塊之后,還包括: 確認模塊,用于確認所述腳本文件對應的語法樹保存在所述語法樹緩存區中; 其中,所述保存模塊還用于當所述腳本文件對應的語法樹不在所述語法樹緩存區中時,將根據所述腳本文件生成的語法樹保存至所述語法樹緩存區中。
12.如權利要求11所述裝置,其特征在于,所述保存模塊包括: 源數據獲取單元,用于獲取所述腳本文件的源數據; 解析單元,用于將所述源數據獲取單元獲取的所述腳本文件的源數據解析成所述腳本文件對應的語法樹; 保存單元,用于將所述解析單元解析出的所述腳本文件對應的語法樹保存至所述語法樹緩存區中。
【文檔編號】G06F9/445GK103823694SQ201410046970
【公開日】2014年5月28日 申請日期:2014年2月10日 優先權日:2014年2月10日
【發明者】卓可橋 申請人:深圳市同洲電子股份有限公司