移動應(yīng)用程序調(diào)試方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種移動應(yīng)用程序調(diào)試方法及裝置,該移動應(yīng)用程序調(diào)試方法包括:代理服務(wù)器獲取待調(diào)試移動應(yīng)用程序的HTTP請求;代理服務(wù)器判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,其中,預(yù)設(shè)統(tǒng)一資源定位符為在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址;以及代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示,其中,第一HTTP響應(yīng)包預(yù)先存儲于代理服務(wù)器的本地存儲區(qū)域。通過本發(fā)明,解決了相關(guān)技術(shù)中對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試比較復(fù)雜的問題,進而達到了提高對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試的便捷性的效果。
【專利說明】移動應(yīng)用程序調(diào)試方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種移動應(yīng)用程序調(diào)試方法及裝置。
【背景技術(shù)】
[0002]隨著移動互聯(lián)網(wǎng)的快速發(fā)展,各種移動應(yīng)用程序(Applicat1n,簡稱為APP)的開發(fā)也變得非常熱門。開發(fā)者可以在普通電腦上完成移動應(yīng)用程序的開發(fā)、調(diào)試以及測試的流程,卻無法在移動設(shè)備上安裝各種移動應(yīng)用程序的開發(fā)工具以輔助調(diào)試,一旦移動應(yīng)用程序安裝到普通用戶的手機等移動設(shè)備上,出現(xiàn)問題很難排查?,F(xiàn)有方案通常都是通過在普通電腦上安裝手機模擬器去排查移動應(yīng)用程序的問題,或者在手機等移動設(shè)備上安裝專用的調(diào)試軟件來調(diào)試該移動應(yīng)用程序,上述方法一方面操作較為繁瑣復(fù)雜,另一方面在手機等移動設(shè)備上安裝專用的調(diào)試軟件來調(diào)試可能會影響手機等移動設(shè)備的安全,例如,蘋果手機需要越獄破解后才能安裝一些調(diào)試軟件。
[0003]針對相關(guān)技術(shù)中對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試比較復(fù)雜的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的主要目的在于提供一種移動應(yīng)用程序調(diào)試方法及裝置,以解決相關(guān)技術(shù)中對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試比較復(fù)雜的問題。
[0005]為了實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種移動應(yīng)用程序調(diào)試方法。
[0006]根據(jù)本發(fā)明的移動應(yīng)用程序調(diào)試方法包括:代理服務(wù)器獲取待調(diào)試移動應(yīng)用程序的HTTP請求,其中,HTTP請求為用于請求進行網(wǎng)絡(luò)訪問的請求,待調(diào)試移動應(yīng)用程序運行于移動設(shè)備上;代理服務(wù)器判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,其中,預(yù)設(shè)統(tǒng)一資源定位符為在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址;以及代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示,其中,第一 HTTP響應(yīng)包預(yù)先存儲于代理服務(wù)器的本地存儲區(qū)域。
[0007]進一步地,代理服務(wù)器判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符包括:獲取HTTP請求中的統(tǒng)一資源定位符;將HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符比較;如果HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符相同,則判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符;以及如果HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符不相同,則判斷出HTTP請求中不包含預(yù)設(shè)統(tǒng)一資源定位符。
[0008]進一步地,代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示之前,方法還包括:代理服務(wù)器根據(jù)HTTP請求從網(wǎng)絡(luò)服務(wù)器獲取第二 HTTP響應(yīng)包;以及代理服務(wù)器存儲第二 HTTP響應(yīng)包和HTTP請求。
[0009]進一步地,第一 HTTP響應(yīng)包包括多個第一 HTTP響應(yīng)包,代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示包括:代理服務(wù)器從多個第一 HTTP響應(yīng)包中查找與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一HTTP響應(yīng)包;以及代理服務(wù)器將與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示。
[0010]進一步地,代理服務(wù)器從多個第一 HTTP響應(yīng)包中查找與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包包括:代理服務(wù)器獲取預(yù)設(shè)統(tǒng)一資源定位符;代理服務(wù)器遍歷與多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符,判斷是否存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符;以及代理服務(wù)器在判斷出存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符時,獲取與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包作為與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包。
[0011]為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種移動應(yīng)用程序調(diào)試裝置。
[0012]根據(jù)本發(fā)明的移動應(yīng)用程序調(diào)試裝置包括:第一獲取單元,用于獲取待調(diào)試移動應(yīng)用程序的HTTP請求,其中,HTTP請求為用于請求進行網(wǎng)絡(luò)訪問的請求,待調(diào)試移動應(yīng)用程序運行于移動設(shè)備上;判斷單元,用于判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,其中,預(yù)設(shè)統(tǒng)一資源定位符為在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址;以及發(fā)送單元,用于在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示,其中,第一 HTTP響應(yīng)包預(yù)先存儲于本地存儲區(qū)域。
[0013]進一步地,判斷單元包括:第一獲取模塊,用于獲取HTTP請求中的統(tǒng)一資源定位符;比較模塊,用于將HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符比較;判斷模塊,用于在HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符相同時,判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符,在HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符不相同時,判斷出HTTP請求中不包含預(yù)設(shè)統(tǒng)一資源定位符。
[0014]進一步地,該裝置還包括:第二獲取單元,用于根據(jù)HTTP請求從網(wǎng)絡(luò)服務(wù)器獲取第二 HTTP響應(yīng)包;以及存儲單元,用于存儲第二 HTTP響應(yīng)包和HTTP請求。
[0015]進一步地,第一 HTTP響應(yīng)包包括多個第一 HTTP響應(yīng)包,發(fā)送單元包括:查找模塊,用于從多個第一 HTTP響應(yīng)包中查找與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包;以及發(fā)送模塊,用于將與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示。
[0016]進一步地,查找模塊包括:第一獲取子模塊,用于獲取預(yù)設(shè)統(tǒng)一資源定位符;判斷子模塊,用于遍歷與多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符,判斷是否存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符;以及第二獲取子模塊,在判斷出存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符時,獲取與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包作為與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包。
[0017]通過本發(fā)明,采用代理服務(wù)器監(jiān)測待調(diào)試移動應(yīng)用程序的HTTP流量包,并對預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的HTTP響應(yīng)包進行替換實現(xiàn)待調(diào)試移動應(yīng)用程序的調(diào)試,解決了相關(guān)技術(shù)中對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試比較復(fù)雜的問題,進而達到了提高對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試的便捷性的效果。
【專利附圖】
【附圖說明】
[0018]構(gòu)成本申請的一部分的附圖用來提供對本發(fā)明的進一步理解,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0019]圖1是根據(jù)本發(fā)明實施例的移動應(yīng)用程序調(diào)試方法的流程圖;
[0020]圖2是根據(jù)本發(fā)明實施例的配置代理服務(wù)器的示意圖;以及
[0021]圖3是根據(jù)本發(fā)明實施例的移動應(yīng)用程序調(diào)試裝置的示意圖。
【具體實施方式】
[0022]需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。
[0023]為了使本【技術(shù)領(lǐng)域】的人員更好地理解本申請方案,下面將結(jié)合本申請實施例中的附圖,對本申請實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分的實施例,而不是全部的實施例。基于本申請中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應(yīng)當(dāng)屬于本申請保護的范圍。
[0024]需要說明的是,本申請的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本申請的實施例。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
[0025]根據(jù)本發(fā)明實施例,提供了一種移動應(yīng)用程序調(diào)試方法,圖1是根據(jù)本發(fā)明實施例的移動應(yīng)用程序調(diào)試方法的流程圖。
[0026]如圖1所示,該移動應(yīng)用程序調(diào)試方法包括如下的步驟S102至步驟S106:
[0027]步驟S102:代理服務(wù)器獲取待調(diào)試移動應(yīng)用程序的HTTP請求,其中,HTTP請求為用于請求進行網(wǎng)絡(luò)訪問的請求,待調(diào)試移動應(yīng)用程序運行于移動設(shè)備上。
[0028]代理服務(wù)器是介于瀏覽器和WEB服務(wù)器之間的服務(wù)器,瀏覽器進行網(wǎng)絡(luò)訪問時,不是直接向WEB服務(wù)器發(fā)送訪問請求,而是向代理服務(wù)器發(fā)送訪問請求,由代理服務(wù)器從WEB服務(wù)器取回瀏覽器所需的數(shù)據(jù)并傳送給瀏覽器,從而,代理服務(wù)器可以監(jiān)測瀏覽器和WEB服務(wù)器的通信數(shù)據(jù)。本發(fā)明實施例的代理服務(wù)器為HTTP代理服務(wù)器,HTTP (Hyper TextTransfer Protocol)即超文本傳輸協(xié)議,是互聯(lián)網(wǎng)上進行信息傳輸時使用最為廣泛的一種通信協(xié)議,上述HTTP代理服務(wù)器具有監(jiān)測HTTP流量包、存儲HTTP流量包至HTTP代理服務(wù)器的本地存儲區(qū)域以及過濾特定URL并進行HTTP包替換的功能,其中,HTTP流量包是指基于HTTP進行通信的數(shù)據(jù)包,例如,瀏覽器向HTTP代理服務(wù)器發(fā)送訪問請求,以及HTTP代理服務(wù)器通過該訪問請求從WEB服務(wù)器上獲取數(shù)據(jù)并返回給瀏覽器,HTTP流量包包含該通信過程的所有數(shù)據(jù)。
[0029]具體地,本發(fā)明實施例的代理服務(wù)器可以設(shè)置在用戶的計算機上,并在手機等移動設(shè)備中配置該代理服務(wù)器的地址,包括IP地址和端口,以建立移動設(shè)備和代理服務(wù)器的通信,例如,代理服務(wù)器的地址為10.136.4.133:8888,則在手機的網(wǎng)絡(luò)設(shè)置中設(shè)置該代理服務(wù)器的IP地址和端口,如圖2所示,在代理服務(wù)器主機名設(shè)置為10.136.4.133,代理服務(wù)器端口設(shè)置為8888,從而建立手機與該代理服務(wù)器之間的通信,此時,手機對網(wǎng)絡(luò)的訪問需要經(jīng)過該代理服務(wù)器。待調(diào)試移動應(yīng)用程序可以是任意基于HTTP通信協(xié)議的移動應(yīng)用程序,例如,網(wǎng)易新聞、微博等移動應(yīng)用程序。用戶在移動設(shè)備上運行這些移動應(yīng)用程序時,可能會出現(xiàn)網(wǎng)頁顯示異常的情況,例如,用戶通過網(wǎng)易新聞客戶端瀏覽新聞時,出現(xiàn)某個新聞頁面顯示異常,如,新聞內(nèi)容顯示不完全,此時需要對該移動應(yīng)用程序進行調(diào)試,例如,修改該移動應(yīng)用程序中顯示異常的頁面的版式。待調(diào)試移動應(yīng)用程序的HTTP請求即在用戶通過待調(diào)試移動應(yīng)用程序訪問某個網(wǎng)頁時,待調(diào)試移動應(yīng)用程序向代理服務(wù)器發(fā)送的訪問請求,例如,用戶點擊網(wǎng)頁新聞客戶端的某個新聞的鏈接后,首先向代理服務(wù)器發(fā)送請求。HTTP請求中包含需要訪問的資源的統(tǒng)一資源定位符和使用的協(xié)議。
[0030]步驟S104:代理服務(wù)器判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,其中,預(yù)設(shè)統(tǒng)一資源定位符為在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址。
[0031]代理服務(wù)器在獲取到來自于待調(diào)試移動應(yīng)用程序的HTTP請求后,判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符。預(yù)設(shè)統(tǒng)一資源定位符為在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址,例如,當(dāng)用戶通過移動設(shè)備訪問http://www.baidu.com/出現(xiàn)異常,此時可以將該http://WWW.baidu.com/設(shè)置為預(yù)設(shè)統(tǒng)一資源定位符。具體地,代理服務(wù)器判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符包括:獲取HTTP請求中的統(tǒng)一資源定位符;將HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符比較;如果HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符相同,則判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符;以及如果HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符不相同,則判斷出HTTP請求中不包含預(yù)設(shè)統(tǒng)一資源定位符。
[0032]步驟S106:代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示,其中,第一 HTTP響應(yīng)包預(yù)先存儲于代理服務(wù)器的本地存儲區(qū)域。
[0033]代理服務(wù)器判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符說明該次訪問請求獲取的網(wǎng)頁是在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁,如果代理服務(wù)器還是直接從WEB服務(wù)器獲取數(shù)據(jù)并返回給待調(diào)試移動應(yīng)用程序進行顯示,此時在待調(diào)試移動應(yīng)用程序上顯示的頁面還是顯示異常。第一 HTTP響應(yīng)包是在開發(fā)人員分析顯示異常的頁面異常顯示原因之后重新編寫的HTTP響應(yīng)包,例如,網(wǎng)易新聞的某個頁面顯示異常,開發(fā)人員經(jīng)過分析發(fā)現(xiàn)可能是由于這個頁面的版式不兼容從WEB服務(wù)器獲取的數(shù)據(jù)導(dǎo)致的,此時,可以針對該網(wǎng)頁的版式進行修改,把修改后的代碼存儲為第一 HTTP響應(yīng)包。本發(fā)明實施例并不直接修改移動應(yīng)用程序的代碼,而是編寫新的HTTP響應(yīng)包,在該新的HTTP響應(yīng)包中進行相應(yīng)的修改,并將該新的HTTP響應(yīng)包(即第一 HTTP響應(yīng)包)存儲在代理服務(wù)器的本地存儲區(qū)域。HTTP響應(yīng)包為用于響應(yīng)HTTP請求的數(shù)據(jù)包。
[0034]代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示,如果在待調(diào)試移動應(yīng)用程序上顯示正常,說明調(diào)試成功,此時,可以根據(jù)第一 HTTP響應(yīng)包的修改邏輯來更改移動應(yīng)用程序的代碼,如果在待調(diào)試移動應(yīng)用程序上顯示仍不正常,此時開發(fā)人員需要再次重復(fù)上述操作進行調(diào)試,直至返回的第一 HTTP響應(yīng)包在待調(diào)試移動應(yīng)用程序上顯示正常,完成調(diào)試。
[0035]本發(fā)明實施例通過代理服務(wù)器監(jiān)測待調(diào)試移動應(yīng)用程序的HTTP流量,并對HTTP響應(yīng)包進行替換實現(xiàn)待調(diào)試移動應(yīng)用程序的調(diào)試,無需修改移動應(yīng)用程序的軟件代碼、無需在移動設(shè)備上安裝調(diào)試軟件,方便快捷的實現(xiàn)待調(diào)試移動應(yīng)用程序的調(diào)試,而且適用于任意基于HTTP協(xié)議的移動應(yīng)用程的調(diào)試,解決了相關(guān)技術(shù)中對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試比較復(fù)雜的問題。
[0036]優(yōu)選地,代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示之前,方法還包括:代理服務(wù)器根據(jù)HTTP請求從網(wǎng)絡(luò)服務(wù)器獲取第二 HTTP響應(yīng)包;以及代理服務(wù)器存儲第二 HTTP響應(yīng)包和HTTP請求。
[0037]第二 HTTP響應(yīng)包是代理服務(wù)器根據(jù)HTTP請求從網(wǎng)絡(luò)服務(wù)器獲取的HTTP響應(yīng)包,在代理服務(wù)器接受到從網(wǎng)絡(luò)服務(wù)器返回的第二 HTTP響應(yīng)包時,將該第二 HTTP響應(yīng)包和其對應(yīng)的HTTP請求關(guān)聯(lián)存儲起來,以供開發(fā)人員根據(jù)該第二 HTTP響應(yīng)包編寫第一 HTTP響應(yīng)包,從而提高第一 HTTP響應(yīng)包的編寫效率,進一步提高移動應(yīng)用程序調(diào)試的效率。
[0038]可選地,第一 HTTP響應(yīng)包包括多個第一 HTTP響應(yīng)包,代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示包括:代理服務(wù)器從多個第一 HTTP響應(yīng)包中查找與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一HTTP響應(yīng)包;以及代理服務(wù)器將與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示。
[0039]多個第一 HTTP響應(yīng)包可以是分別對應(yīng)于同一個待調(diào)試移動應(yīng)用程序中多個顯示異常的頁面的地址,也可以是對應(yīng)于多個待調(diào)試移動應(yīng)用程序中顯示異常的頁面的地址。為了快速查找到預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包,預(yù)先可以將多個第一 HTTP響應(yīng)包和其對應(yīng)的統(tǒng)一資源定位符關(guān)聯(lián)存儲??蛇x地,代理服務(wù)器從多個第一 HTTP響應(yīng)包中查找與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包包括:代理服務(wù)器獲取預(yù)設(shè)統(tǒng)一資源定位符;代理服務(wù)器遍歷與多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符,判斷是否存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符;以及代理服務(wù)器在判斷出存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符時,獲取與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包作為與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包。
[0040]通過將預(yù)設(shè)統(tǒng)一資源定位符和多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符分別比較,如果多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符中存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符,則獲取與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符關(guān)聯(lián)的第一HTTP響應(yīng)包,并將該第一 HTTP響應(yīng)包作為與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包。
[0041]從以上的描述中,可以看出,本發(fā)明實現(xiàn)了如下技術(shù)效果:
[0042]本發(fā)明實施例通過代理服務(wù)器獲取待調(diào)試移動應(yīng)用程序的HTTP請求,判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,以及在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示。通過代理服務(wù)器對待調(diào)試移動應(yīng)用程序的HTTP流量包進行監(jiān)測,在監(jiān)測到待調(diào)試移動應(yīng)用程序的HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,則用代理服務(wù)器的本地存儲區(qū)域存儲的第一 HTTP響應(yīng)包替換該HTTP請求對應(yīng)的HTTP響應(yīng)包,實現(xiàn)待調(diào)試移動應(yīng)用程序的調(diào)試,無需修改待調(diào)試移動應(yīng)用程序的軟件代碼和無需在移動設(shè)備上安裝調(diào)試軟件,方便快捷的實現(xiàn)待調(diào)試移動應(yīng)用程序的調(diào)試,而且適用于任意基于HTTP協(xié)議的移動應(yīng)用程的調(diào)試,解決了相關(guān)技術(shù)中對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試比較復(fù)雜的問題。
[0043]需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
[0044]根據(jù)本發(fā)明實施例的另一方面,提供了一種移動應(yīng)用程序調(diào)試裝置,該移動應(yīng)用程序調(diào)試裝置可以用于執(zhí)行本發(fā)明實施例的移動應(yīng)用程序調(diào)試方法,本發(fā)明實施例的移動應(yīng)用程序調(diào)試方法也可以通過本發(fā)明實施例的移動應(yīng)用程序調(diào)試裝置來執(zhí)行。
[0045]如圖3所示,該移動應(yīng)用程序調(diào)試裝置包括:第一獲取單元10,判斷單元20和發(fā)送單元30。
[0046]第一獲取單元10,用于獲取待調(diào)試移動應(yīng)用程序的HTTP請求,其中,HTTP請求為用于請求進行網(wǎng)絡(luò)訪問的請求,待調(diào)試移動應(yīng)用程序運行于移動設(shè)備上。
[0047]本發(fā)明實施例的代理服務(wù)器為HTTP代理服務(wù)器,HTTP (Hyper Text TransferProtocol)即超文本傳輸協(xié)議,是互聯(lián)網(wǎng)上進行信息傳輸時使用最為廣泛的一種通信協(xié)議,上述HTTP代理服務(wù)器具有監(jiān)測HTTP流量包、存儲HTTP流量包至HTTP代理服務(wù)器的本地存儲區(qū)域以及過濾特定URL并進行HTTP包替換的功能,其中,HTTP流量包是指基于HTTP進行通信的數(shù)據(jù)包。
[0048]判斷單元20,用于判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,其中,預(yù)設(shè)統(tǒng)一資源定位符為在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址。
[0049]代理服務(wù)器在獲取到來自于待調(diào)試移動應(yīng)用程序的HTTP請求后,判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符。預(yù)設(shè)統(tǒng)一資源定位符為在待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址,例如,當(dāng)用戶通過移動設(shè)備訪問http://www.baidu.com/出現(xiàn)異常,此時可以將該http://www.baidu.com/設(shè)置為預(yù)設(shè)統(tǒng)一資源定位符。
[0050]發(fā)送單元30,用于在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示,其中,第一 HTTP響應(yīng)包預(yù)先存儲于本地存儲區(qū)域。
[0051]第一 HTTP響應(yīng)包是在開發(fā)人員分析顯示異常的頁面異常顯示原因之后重新編寫的HTTP響應(yīng)包,例如,網(wǎng)易新聞的某個頁面顯示異常,開發(fā)人員經(jīng)過分析發(fā)現(xiàn)可能是由于這個頁面的版式不兼容從網(wǎng)絡(luò)服務(wù)器獲取的數(shù)據(jù)導(dǎo)致的,此時,可以針對該網(wǎng)頁的版式進行修改,把修改后的代碼存儲為第一 HTTP響應(yīng)包。
[0052]代理服務(wù)器在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示,如果在待調(diào)試移動應(yīng)用程序上顯示正常,說明調(diào)試成功,此時,可以根據(jù)第一 HTTP響應(yīng)包的修改邏輯來更改移動應(yīng)用程序的代碼,如果在待調(diào)試移動應(yīng)用程序上顯示仍不正常,此時開發(fā)人員需要再次重復(fù)上述操作進行調(diào)試,直至返回的第一 HTTP響應(yīng)包在待調(diào)試移動應(yīng)用程序上顯示正常,完成調(diào)試。
[0053]本發(fā)明實施例通過第一獲取單元10獲取待調(diào)試移動應(yīng)用程序的HTTP請求,判斷單元20判斷HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,發(fā)送單元30在判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示。通過對待調(diào)試移動應(yīng)用程序的HTTP流量包進行監(jiān)測,在監(jiān)測到待調(diào)試移動應(yīng)用程序的HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符時,則用本地存儲區(qū)域存儲的第一 HTTP響應(yīng)包替換該HTTP請求對應(yīng)的HTTP響應(yīng)包,實現(xiàn)待調(diào)試移動應(yīng)用程序的調(diào)試,無需修改待調(diào)試移動應(yīng)用程序的軟件代碼、無需在移動設(shè)備上安裝調(diào)試軟件,方便快捷的實現(xiàn)待調(diào)試移動應(yīng)用程序的調(diào)試,而且適用于任意基于HTTP協(xié)議的移動應(yīng)用程的調(diào)試,解決了相關(guān)技術(shù)中對移動設(shè)備上的移動應(yīng)用程序進行調(diào)試比較復(fù)雜的問題。
[0054]可選地,判斷單元20包括:第一獲取模塊,用于獲取HTTP請求中的統(tǒng)一資源定位符;比較模塊,用于將HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符比較;判斷模塊,用于在HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符相同時,判斷出HTTP請求中包含預(yù)設(shè)統(tǒng)一資源定位符,在HTTP請求中的統(tǒng)一資源定位符與預(yù)設(shè)統(tǒng)一資源定位符不相同時,判斷出HTTP請求中不包含預(yù)設(shè)統(tǒng)一資源定位符。
[0055]優(yōu)選地,該裝置還包括:第二獲取單元,用于根據(jù)HTTP請求從網(wǎng)絡(luò)服務(wù)器獲取第二 HTTP響應(yīng)包;以及存儲單元,用于存儲第二 HTTP響應(yīng)包和HTTP請求。
[0056]可選地,第一 HTTP響應(yīng)包包括多個第一 HTTP響應(yīng)包,發(fā)送單元包括:查找模塊,用于從多個第一 HTTP響應(yīng)包中查找與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包;以及發(fā)送模塊,用于將與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包返回給待調(diào)試移動應(yīng)用程序進行顯示。
[0057]可選地,查找模塊包括:第一獲取子模塊,用于獲取預(yù)設(shè)統(tǒng)一資源定位符;判斷子模塊,用于遍歷與多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符,判斷是否存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符;以及第二獲取子模塊,在判斷出存在與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符時,獲取與預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包作為與預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包。
[0058]具體地,本發(fā)明實施例中的移動應(yīng)用程序調(diào)試裝置可以是代理服務(wù)器。
[0059]顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0060]以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種移動應(yīng)用程序調(diào)試方法,其特征在于,包括: 代理服務(wù)器獲取待調(diào)試移動應(yīng)用程序的HTTP請求,其中,所述HTTP請求為用于請求進行網(wǎng)絡(luò)訪問的請求,所述待調(diào)試移動應(yīng)用程序運行于移動設(shè)備上; 所述代理服務(wù)器判斷所述HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,其中,所述預(yù)設(shè)統(tǒng)一資源定位符為在所述待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址;以及 所述代理服務(wù)器在判斷出所述HTTP請求中包含所述預(yù)設(shè)統(tǒng)一資源定位符時,將第一HTTP響應(yīng)包返回給所述待調(diào)試移動應(yīng)用程序進行顯示,其中,所述第一 HTTP響應(yīng)包預(yù)先存儲于所述代理服務(wù)器的本地存儲區(qū)域。
2.根據(jù)權(quán)利要求1所述的移動應(yīng)用程序調(diào)試方法,其特征在于,所述代理服務(wù)器判斷所述HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符包括: 獲取所述HTTP請求中的統(tǒng)一資源定位符; 將所述HTTP請求中的統(tǒng)一資源定位符與所述預(yù)設(shè)統(tǒng)一資源定位符比較; 如果所述HTTP請求中的統(tǒng)一資源定位符與所述預(yù)設(shè)統(tǒng)一資源定位符相同,則判斷出所述HTTP請求中包含所述預(yù)設(shè)統(tǒng)一資源定位符;以及 如果所述HTTP請求中的統(tǒng)一資源定位符與所述預(yù)設(shè)統(tǒng)一資源定位符不相同,則判斷出所述HTTP請求中不包含所述預(yù)設(shè)統(tǒng)一資源定位符。
3.根據(jù)權(quán)利要求1所述的移動應(yīng)用程序調(diào)試方法,其特征在于,所述代理服務(wù)器在判斷出所述HTTP請求中包含所述預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給所述待調(diào)試移動應(yīng)用程序進行顯示之前,所述方法還包括: 所述代理服務(wù)器根據(jù)所述HTTP請求從網(wǎng)絡(luò)服務(wù)器獲取第二 HTTP響應(yīng)包;以及 所述代理服務(wù)器存儲所述第二 HTTP響應(yīng)包和所述HTTP請求。
4.根據(jù)權(quán)利要求1所述的移動應(yīng)用程序調(diào)試方法,其特征在于,所述第一HTTP響應(yīng)包包括多個第一 HTTP響應(yīng)包,所述代理服務(wù)器在判斷出所述HTTP請求中包含所述預(yù)設(shè)統(tǒng)一資源定位符時,將第一 HTTP響應(yīng)包返回給所述待調(diào)試移動應(yīng)用程序進行顯示包括: 所述代理服務(wù)器從所述多個第一 HTTP響應(yīng)包中查找與所述預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包;以及 所述代理服務(wù)器將與所述預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包返回給所述待調(diào)試移動應(yīng)用程序進行顯示。
5.根據(jù)權(quán)利要求4所述的移動應(yīng)用程序調(diào)試方法,其特征在于,所述代理服務(wù)器從所述多個第一 HTTP響應(yīng)包中查找與所述預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包包括: 所述代理服務(wù)器獲取所述預(yù)設(shè)統(tǒng)一資源定位符; 所述代理服務(wù)器遍歷與所述多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符,判斷是否存在與所述預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符;以及 所述代理服務(wù)器在判斷出存在與所述預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符時,獲取與所述預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包作為與所述預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包。
6.一種移動應(yīng)用程序調(diào)試裝置,其特征在于,包括: 第一獲取單元,用于獲取待調(diào)試移動應(yīng)用程序的HTTP請求,其中,所述HTTP請求為用于請求進行網(wǎng)絡(luò)訪問的請求,所述待調(diào)試移動應(yīng)用程序運行于移動設(shè)備上; 判斷單元,用于判斷所述HTTP請求中是否包含預(yù)設(shè)統(tǒng)一資源定位符,其中,所述預(yù)設(shè)統(tǒng)一資源定位符為在所述待調(diào)試移動應(yīng)用程序中顯示異常的網(wǎng)頁的地址;以及 發(fā)送單元,用于在判斷出所述HTTP請求中包含所述預(yù)設(shè)統(tǒng)一資源定位符時,將第一HTTP響應(yīng)包返回給所述待調(diào)試移動應(yīng)用程序進行顯示,其中,所述第一 HTTP響應(yīng)包預(yù)先存儲于本地存儲區(qū)域。
7.根據(jù)權(quán)利要求6所述的移動應(yīng)用程序調(diào)試裝置,其特征在于,所述判斷單元包括: 第一獲取模塊,用于獲取所述HTTP請求中的統(tǒng)一資源定位符; 比較模塊,用于將所述HTTP請求中的統(tǒng)一資源定位符與所述預(yù)設(shè)統(tǒng)一資源定位符比較; 判斷模塊,用于在所述HTTP請求中的統(tǒng)一資源定位符與所述預(yù)設(shè)統(tǒng)一資源定位符相同時,判斷出所述HTTP請求中包含所述預(yù)設(shè)統(tǒng)一資源定位符,在所述HTTP請求中的統(tǒng)一資源定位符與所述預(yù)設(shè)統(tǒng)一資源定位符不相同時,判斷出所述HTTP請求中不包含所述預(yù)設(shè)統(tǒng)一資源定位符。
8.根據(jù)權(quán)利要求6所述的移動應(yīng)用程序調(diào)試裝置,其特征在于,所述裝置還包括: 第二獲取單元,用于根據(jù)所述HTTP請求從網(wǎng)絡(luò)服務(wù)器獲取第二 HTTP響應(yīng)包;以及 存儲單元,用于存儲所述第二 HTTP響應(yīng)包和所述HTTP請求。
9.根據(jù)權(quán)利要求6所述的移動應(yīng)用程序調(diào)試裝置,其特征在于,所述第一HTTP響應(yīng)包包括多個第一 HTTP響應(yīng)包,所述發(fā)送單元包括: 查找模塊,用于從所述多個第一 HTTP響應(yīng)包中查找與所述預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包;以及 發(fā)送模塊,用于將與所述預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包返回給所述待調(diào)試移動應(yīng)用程序進行顯示。
10.根據(jù)權(quán)利要求9所述的移動應(yīng)用程序調(diào)試裝置,其特征在于,所述查找模塊包括: 第一獲取子模塊,用于獲取所述預(yù)設(shè)統(tǒng)一資源定位符; 判斷子模塊,用于遍歷與所述多個第一 HTTP響應(yīng)包對應(yīng)的統(tǒng)一資源定位符,判斷是否存在與所述預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符;以及 第二獲取子模塊,在判斷出存在與所述預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符時,獲取與所述預(yù)設(shè)統(tǒng)一資源定位符相同的統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包作為與所述預(yù)設(shè)統(tǒng)一資源定位符對應(yīng)的第一 HTTP響應(yīng)包。
【文檔編號】H04L29/08GK104486333SQ201410768103
【公開日】2015年4月1日 申請日期:2014年12月11日 優(yōu)先權(quán)日:2014年12月11日
【發(fā)明者】楊基彬 申請人:北京國雙科技有限公司