專利名稱:請求資源的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種請求資源的方法和裝置。
背景技術(shù):
HTTP (Hyper Text Transfer Protocol,超文本傳輸協(xié)議)是目前網(wǎng)頁傳輸?shù)耐ㄓ脜f(xié)議,它允許將HTMUHypertext Markup Language,超文本標記語言)文檔從Web服務(wù)器傳送到Web瀏覽器。HTTP采用了請求/響應(yīng)模型,終端通過瀏覽器或下載工具發(fā)送一個HTTP請求消息給服務(wù)器,請求獲取所需的資源,服務(wù)器收到該請求消息后,給予相應(yīng)的響應(yīng),將該資源發(fā)送給終端。終端向服務(wù)器發(fā)送的HTTP請求消息由請求行、請求頭部、空行和消息正文組成。該請求行包括請求方法、URI (Uniform Resource Identifier,統(tǒng)一資源標識符)和協(xié)議版本。該請求方法有多種,如GET方法請求獲取由URI所標識的資源。請求頭部包括普通頭域、請求頭域、響應(yīng)頭域和實體頭域,用來表示不同的信息。目前,請求頭部中會包括多種信息:能夠接收的內(nèi)容類型、可接受的語言、是否需要持久連接、請求發(fā)送的日期和時間、請求的服務(wù)器的域名和端口號、發(fā)出請求的用戶信息、緩存機制等等,服務(wù)器會根據(jù)這些信息進行相應(yīng)的響應(yīng)。但是,服務(wù)器存儲的資源通常具有多種類型,如文本、圖像、視頻、音頻等等。對于每一種類型的資源,HTTP請求消息的請求頭部中都會包含上述多種信息,從而會增加HTTP請求中的傳輸流量,造成一定的不必要的流量浪費。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明 實施例提供了一種請求資源的方法和裝置,以減少HTTP請求時的傳輸流量,避免不必要的流量浪費。所述技術(shù)方案如下:一方面,提供了一種請求資源的方法,所述方法包括:向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源;接收所述服務(wù)器返回的描述所述資源的文檔信息;根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項;對請求獲取所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源。其中,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項,包括:查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到所述子資源的類型對應(yīng)的描述項。進一步地,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項之前,還包括:
預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系;其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。通過預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系,在確定當前請求的子資源的描述項時,可以查找該對應(yīng)關(guān)系得到所述子資源的類型對應(yīng)的描述項,容易實現(xiàn),并且方便后續(xù)對請求頭部進行簡化處理。其中,根據(jù)所述文檔信息得到所述子資源的類型,包括:解析所述文檔信息得到所述文檔信息中描述的所述子資源的信息;根據(jù)所述子資源的信息確定所述子資源的類型。所述文檔信息中描述有所述子資源的信息,所述子資源的信息包括子資源的類型,因此,通過解析所述文檔信息可以得到所述子資源的類型,實現(xiàn)方便又快捷。其中,向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源,包括:與所述服務(wù)器建立連接;在當前的連接下首次向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源。所述第一 HTTP請求消息請求的資源為當前連接下首次請求的資源,其中包括子資源,通過對請求子資源的第二 HTTP請求消息的請求頭的簡化處理,可以減少傳輸流量,達到了避免不必要的流量浪費的效果。另一方面,提供了 一種請求資源的裝置,所述裝置包括:發(fā)送模塊,用于向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源;接收模塊,用于接收所述服務(wù)器返回的描述所述資源的文檔信息;確定模塊,用于根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項;處理模塊,用于對請求獲取所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;所述發(fā)送模塊,還用于將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源。其中,所述確定模塊包括:獲取單元,用于根據(jù)所述文檔信息得到所述子資源的類型;查找單元,用于查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到所述子資源的類型對應(yīng)的描述項。進一步地,所述裝置還包括:建立模塊,用于預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系;其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。通過預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系,在確定當前請求的子資源的描述項時,可以查找該對應(yīng)關(guān)系得到所述子資源的類型對應(yīng)的描述項,容易實現(xiàn),并且方便后續(xù)對請求頭部進行簡化處理。其中,所述確定模塊包括:
解析單元,用于解析所述文檔信息得到所述文檔信息中描述的所述子資源的信息,根據(jù)所述子資源的信息確定所述子資源的類型;確定單元,用于根據(jù)所述子資源的類型確定對應(yīng)的描述項。所述文檔信息中描述有所述子資源的信息,所述子資源的信息包括子資源的類型,因此,通過解析所述文檔信息可以得到所述子資源的類型,實現(xiàn)方便又快捷。其中,所述發(fā)送模塊包括:連接單元,用于與所述服務(wù)器建立連接;發(fā)送單元,用于在當前的連接下首次向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源。所述第一 HTTP請求消息請求的資源為當前連接下首次請求的資源,其中包括子資源,通過對請求子資源的第二 HTTP請求消息的請求頭的簡化處理,可以減少傳輸流量,達到了避免不必要的流量浪費的效果。本發(fā)明實施例提供的技術(shù)方案帶來的有益效果是:通過向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源;接收所述服務(wù)器返回的描述所述資源的文檔信息;根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項;對請求所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項; 將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源,由于無需在請求頭部中包含所有的描述項,根據(jù)子資源的類型進行了相應(yīng)的簡化處理,減少了 HTTP請求時的傳輸流量,避免了不必要的流量浪費。
為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明實施例1提供的請求資源的方法流程圖;圖2是本發(fā)明實施例2提供的請求資源的方法流程圖;圖3是本發(fā)明實施例3提供的請求資源的方法流程圖;圖4是本發(fā)明實施例4提供的請求資源的裝置結(jié)構(gòu)圖之一;圖5是本發(fā)明實施例4提供的請求資源的裝置結(jié)構(gòu)圖之二 ;圖6是本發(fā)明實施例4提供的請求資源的裝置結(jié)構(gòu)圖之三;圖7是本發(fā)明實施例4提供的請求資源的裝置結(jié)構(gòu)圖之四。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。本發(fā)明實施例涉及HTTP協(xié)議,用于網(wǎng)絡(luò)側(cè)的服務(wù)器向用戶側(cè)的終端傳輸HTML、XHTML (extensible Hyper Text Markup Language,可擴展超文本標記語言)、XML(Extensible Markup Language,擴展性標記語言)等文檔。用戶側(cè)的終端可以通過發(fā)送HTTP請求消息來向服務(wù)器請求所需的資源。所述HTTP請求消息中包括請求頭部(RequestHead),該請求頭部通常包括多個頭域。每個頭域由一個域名,冒號(:)和域值三部分組成。域名是大小寫無關(guān)的,域值前可以添加任何數(shù)量的空格符。頭域可以被擴展為多行,在每行開始處,使用至少一個空格或制表符。HTTP請求消息中每一個頭域都具有不同的含義。例如,Acc印t頭域指定客戶端能夠接收的內(nèi)容類型;Accept_Charset頭域為瀏覽器可以接受的字符編碼集;Accept_Encoding頭域指定瀏覽器可以支持的web服務(wù)器返回內(nèi)容壓縮編碼類型;Acc印t-Language頭域為瀏覽器可接受的語言;Cache_Control頭域指定請求和響應(yīng)遵循的緩存機制!Connection頭域表示是否需要持久連接(HTTP1.1默認進行持久連接);Date頭域為請求發(fā)送的日期和時間;Host頭域指定請求的服務(wù)器的域名和端口號;Pragma頭域用來包含實現(xiàn)特定的指令;User-Agent頭域包含發(fā)出請求的用戶信息;Warning頭域為關(guān)于消息實體的警告信息,
坐坐寸寸ο實施例1參見圖1,本實施例提供了一種請求資源的方法,包括:101:向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源,該資源包括子資源;102:接收服務(wù)器返回的描述該資源的文檔信息;
103:根據(jù)該文檔信息得到子資源的類型,根據(jù)子資源的類型確定該子資源對應(yīng)的描述項;104:對請求獲取子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;105:將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給服務(wù)器,請求獲取所述子資源。本實施例提供的上述方法可以由終端來執(zhí)行,所述終端包括但不限于:計算機、筆記本電腦、手機、平板電腦等等。所述資源可以為一個網(wǎng)頁,所述資源可以包括一個或者一個以上子資源。所述子資源的類型包括但不限于:文本、圖像、視頻、音頻等等,本實施例對此不做具體限定。通常,請求的資源中包含的子資源是大量的,對于其中每一個子資源都可以執(zhí)行上述方法來簡化子資源的請求,因此,對于大量的子資源請求,不用發(fā)送不必要的頭部信息,從而可以節(jié)約寶貴的網(wǎng)絡(luò)流量,也不會增加任何其他成本或負擔(dān)。在第一種實施方式下,根據(jù)子資源的類型確定該子資源對應(yīng)的描述項,包括:查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到該子資源的類型對應(yīng)的描述項。基于上述第一種實施方式,在第二種實施方式下,根據(jù)子資源的類型確定該子資源對應(yīng)的描述項之前,還包括:預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系;其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。在第三種實施方式下,根據(jù)該文檔信息得到子資源的類型,包括:解析該文檔信息得到該文檔信息中描述的子資源的信息;根據(jù)該子資源的信息確定子資源的類型。
在第四種實施方式下,向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源,包括:與服務(wù)器建立連接;在當前的連接下首次向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取所述資源。本實施例提供的上述方法,通過向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源;接收所述服務(wù)器返回的描述所述資源的文檔信息;根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定該子資源對應(yīng)的描述項;對請求所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;將經(jīng)過所述處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源,由于無需在請求頭部中包含所有的描述項,根據(jù)子資源的類型進行了相應(yīng)的簡化處理,減少了 HTTP請求時的傳輸流量,避免了不必要的流量浪費。實施例2參見圖2,本實施例提供了一種請求資源的方法,包括:201:向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源,該資源包括子資源;所述資源可以為一個網(wǎng)頁,所述資源可以包括一個或者一個以上子資源。所述子資源的類型包括但不限于:文本、圖像、視頻、音頻等等,本實施例對此不做具體限定。202:接收服務(wù)器返回的描述該資源的文檔信息;所述文檔信息為與該資源對應(yīng)的源代碼文件,其中描述了該資源內(nèi)所有內(nèi)容的相關(guān)信息,包括各個子資源的信息。203:根據(jù)該文檔信息得到所述子資源的類型;其中,所述子資源的信息包括但不限于:子資源的名稱、類型、大小、鏈接地址等等,本實施例對此不做具體限定。所述子資源的類型包括但不限于:文本、圖像、視頻、音頻
坐坐寸寸ο204:查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到該子資源的類型對應(yīng)的描述項;本實施例中,可以預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系;其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。本實施例涉及的描述項是指HTTP請求消息的請求頭部中的頭域。通常,一種資源類型會對應(yīng)多個描述項,具體地,可以根據(jù)需要設(shè)置上述對應(yīng)關(guān)系,對于與當前資源類型相關(guān)的描述項可以設(shè)置在該對應(yīng)關(guān)系中,而與當前資源類型無關(guān)的描述項則不用設(shè)置在該對應(yīng)關(guān)系中,本實施例對此不做具體限定。205:對請求獲取子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;其中,由于保留的所述描述項為與該子資源的類型相關(guān)的描述項,其余描述項與該子資源的類型無關(guān),因此,通過刪除其余描述項,在不影響服務(wù)器進行解析和響應(yīng)的情況下,達到了對該第二 HTTP請求消息的請求頭部進行簡化處理的效果。206:將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給服務(wù)器,請求獲取所述子資源。本實施例提供的上述方法可以由終端來執(zhí)行,所述終端包括但不限于:計算機、筆記本電腦、手機、平板電腦 等等。
本實施例提供的上述方法,通過向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源;接收所述服務(wù)器返回的描述所述資源的文檔信息;根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定該子資源對應(yīng)的描述項;對請求所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;將經(jīng)過所述處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源,由于無需在請求頭部中包含所有的描述項,根據(jù)子資源的類型進行了相應(yīng)的簡化處理,減少了 HTTP請求時的傳輸流量,避免了不必要的流量浪費。另外,通過預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系,在確定當前請求的子資源的描述項時,可以查找該對應(yīng)關(guān)系得到所述子資源的類型對應(yīng)的描述項,容易實現(xiàn),并且方便后續(xù)對請求頭部進行簡化處理。所述文檔信息中描述有所述子資源的信息,所述子資源的信息包括子資源的類型,因此,通過解析所述文檔信息可以得到所述子資源的類型,實現(xiàn)方便又快捷。所述第一 HTTP請求消息請求的資源為當前連接下首次請求的資源,其中包括子資源,通過對請求子資源的第二 HTTP請求消息的請求頭的簡化處理,可以減少傳輸流量,達到了避免不必要的流量浪費的效果。實施例3參見圖3,本實施例·提供了一種請求資源的方法,包括:301:向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源,該資源包括子資源;其中,向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源,可以包括:與服務(wù)器建立連接;在當前的連接下首次向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取所述資源。所述資源可以為一個網(wǎng)頁,所述資源可以包括一個或者一個以上子資源。所述子資源的類型包括但不限于:文本、圖像、視頻、音頻等等,本實施例對此不做具體限定。所述第一 HTTP請求消息可以由本地的瀏覽器或下載工具等發(fā)出,具體地,可以為HTTP GET請求消息。所述第一 HTTP請求消息用于請求獲取所述資源。例如,發(fā)送HTTPGET請求消息請求獲取www.sina.com.cn新浪首頁的內(nèi)容,該首頁包括文本、圖像、視頻等內(nèi)容。302:接收服務(wù)器返回的描述該資源的文檔信息;所述文檔信息為與該資源對應(yīng)的源代碼文件,其中描述了該資源內(nèi)所有內(nèi)容的相關(guān)信息,包括各個子資源的信息。例如,請求一個html網(wǎng)頁時,該文檔信息為所請求的網(wǎng)頁對應(yīng)的html文件,其中包括該網(wǎng)頁上的各項子資源的信息。303:解析該文檔信息得到該文檔信息中描述的所述子資源的信息;所述子資源的信息包括但不限于:子資源的名稱、類型、大小、鏈接地址等等,本實施例對此不做具體限定。本實施例中,所述子資源的類型包括但不限于:文本、圖像、視頻、音頻等等。例如:GIF (Graphics Interchange Format,圖像交換格式)圖像資源,text文本資源,HTML網(wǎng)頁資源,CSS (Cascading Style Sheet,級聯(lián)樣式表)資源,JS (Javascript,腳本語言)資源、插件資源、MP3音樂資源、AVI視頻資源等等。304:根據(jù)該子資源的信息確定子資源的類型;通過解析所述文檔信息可以得到其中描述的子資源的信息,從該子資源的信息中提取出子資源的類型,以便后續(xù)根據(jù)該類型確定對應(yīng)的描述項。305:查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到該子資源的類型對應(yīng)的描述項;本實施例中,可以預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系;其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。本實施例涉及的描述項是指HTTP請求消息的請求頭部中的頭域。通常,一種資源類型會對應(yīng)多個描述項,具體地,可以根據(jù)需要設(shè)置上述對應(yīng)關(guān)系,對于與當前資源類型相關(guān)的描述項可以設(shè)置在該對應(yīng)關(guān)系中,而與當前資源類型無關(guān)的描述項則不用設(shè)置在該對應(yīng)關(guān)系中,本實施例對此不做具體限定。306:對請求獲取子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;其中,由于保留的所述描述項為與該子資源的類型相關(guān)的描述項,其余描述項與該子資源的類型無關(guān),因此,通過刪除其余描述項,在不影響服務(wù)器進行解析和響應(yīng)的情況下,達到了對該第二 HTTP請求消息的請求頭部進行簡化處理的效果。307:將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給服務(wù)器,請求獲取所述子資源。下面以一個實例進行說明。本地的終端需要向服務(wù)器獲取一個圖像資源,首先生成一個HTTP請求消息,其請求行和請求頭部具體如下:GET/beijing/40101018/HTTP/l.1//請求行RequestLine,表示使用GET方法請求資源,具有該資源的服務(wù)器所在地為北京,使用HTTP/1.1協(xié)議
//以下為請求頭部RequestHeadHost:hotel, elong.com//指定請求的服務(wù)器的域名和端口號,這里為hotel,elong.comConnectioiKke印-alive//是否與服務(wù)器保持持久連接,這里為保持與服務(wù)器的連接Accept://指定終端能夠接收的內(nèi)容類型例如,該域值為text/html, application/xhtml+xml, application/xml; q=0.9,*/*;q=0.8;則表明客戶端能夠解析的文本格式包括html、xhtml、xml或者其他任意格式,客戶端最優(yōu)先解析的文本格式為html,解析xhtml及xml的接受程度為0.9,解析除上述格式外的其它文本格式的接受程度為0.8 ;User-Agent:Mozilla/5.0(Linux;U;Android4.1.1;zh_cn;MI2Build/JR003L)AppleffebKit/534.30(KHTML, like Gecko)Version/4.0Mobile Safari/534.30Η終端信息,這里包括終端的操作系統(tǒng)信息Android,以及終端的類型Mobile等
信息Accept-Encoding:gzip, deflate//終端的瀏覽器可以支持的web服務(wù)器返回內(nèi)容的壓縮編碼類型,這里包括gzip和deflate格式Accept-Language:zh_CN, en_US
//終端的瀏覽器可接受的語言,這里包括中文和英文Accept-Charset:utf_8, is0-8859-1,utf-16, *;q=0.7//終端的瀏覽器可以接受的字符編碼集,這里包括utf-8和i so-8859-l及utf-16Cache-Control: no-cache//指定請求和響應(yīng)遵循的緩存機制,這里沒有緩存機制對于當前連接下終端首次發(fā)起的HTTP請求消息,需要在請求頭部包含上述所有頭域,但是如果是獲取子資源,且該子資源為圖像資源,則對于待獲取的圖像資源而言,可以將該請求頭部中與圖像資源無關(guān)的頭域刪除,從而簡化消息頭部,減少傳輸流量。具體地,可以將請求頭部中的Accept頭域、User-Agent頭域、Accept-Encoding頭域、Accept-Language頭域和Accept-Charset頭域刪除,其中,僅User-Agent —項就可以節(jié)省149個字節(jié)的流量,可見,經(jīng)過上述簡化處理,能夠極大地減少HTTP請求時的傳輸流量,避免不必要的流量浪費。本實施例提供的上述方法可以由終 端來執(zhí)行,所述終端包括但不限于:計算機、筆記本電腦、手機、平板電腦等等。本實施例提供的上述方法,通過向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源;接收所述服務(wù)器返回的描述所述資源的文檔信息;根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定該子資源對應(yīng)的描述項;對請求所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;將經(jīng)過所述處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源,由于無需在請求頭部中包含所有的描述項,根據(jù)子資源的類型進行了相應(yīng)的簡化處理,減少了 HTTP請求時的傳輸流量,避免了不必要的流量浪費。另外,通過預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系,在確定當前請求的子資源的描述項時,可以查找該對應(yīng)關(guān)系得到所述子資源的類型對應(yīng)的描述項,容易實現(xiàn),并且方便后續(xù)對請求頭部進行簡化處理。所述文檔信息中描述有所述子資源的信息,所述子資源的信息包括子資源的類型,因此,通過解析所述文檔信息可以得到所述子資源的類型,實現(xiàn)方便又快捷。所述第一 HTTP請求消息請求的資源為當前連接下首次請求的資源,其中包括子資源,通過對請求子資源的第二 HTTP請求消息的請求頭的簡化處理,可以減少傳輸流量,達到了避免不必要的流量浪費的效果。實施例4參見圖4,本實施例提供了一種請求資源的裝置,包括:發(fā)送模塊401,用于向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,該資源包括子資源;接收模塊402,用于接收該服務(wù)器返回的描述該資源的文檔信息;確定模塊403,用于根據(jù)該文檔信息得到該子資源的類型,根據(jù)該子資源的類型確定該子資源對應(yīng)的描述項;處理模塊404,用于對請求獲取該子資源的第二 HTTP請求消息進行處理,將請求頭部中的該描述項保留并刪除其余描述項;該發(fā)送模塊401,還用于將經(jīng)過該處理后的第二 HTTP請求消息發(fā)送給該服務(wù)器,請求獲取該子資源。參見圖5,確定模塊403可以包括:獲取單元403a,用于根據(jù)該文檔信息得到該子資源的類型;查找單元403b,用于查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到該子資源的類型對應(yīng)的描述項。進一步地,上述裝置還可以包括:建立模塊405,用于預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系;其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。參見圖6,確定模塊403可以包括:解析單元403c,用于解析該文檔信息得到該文檔信息中描述的該子資源的信息,根據(jù)該子資源的信息確定該子資源的類型;確定單元403d,用于根據(jù)該子資源的類型確定對應(yīng)的描述項。參見圖7,發(fā)送模塊401可以包括:連接單元401a,用于與該服務(wù)器建立連接;發(fā)送單元401b,用于在當前的連接下首次向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源。本實施例提供的上述裝置可以執(zhí)行上述任一方法實施例中提供的方法,詳細過程見方法實施例中的描述,此處不贅述。所述裝置可以應(yīng)用于終端中,該終端包括但不限于:計算機、筆記本電腦、手機、平板電腦等等,本發(fā)明實施例對此不做具體限定。本實施例提供的上述裝置,通過向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源;接收所述服務(wù)器返回的描述所述資源的文檔信息;根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定該子資源對應(yīng)的描述項;對請求所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;將經(jīng)過所述處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源,由于無需在請求頭部中包含所有的描述項,根據(jù)子資源的類型進行了相應(yīng)的簡化處理,減少了 HTTP請求時的傳輸流量,避免了不必要的流量浪費。另外,通過預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系,在確定當前請求的子資源的描述項時,可以查找該對應(yīng)關(guān)系得到所述子資源的類型對應(yīng)的描述項,容易實現(xiàn),并且方便后續(xù)對請求頭部進行簡化處理。所述文檔信息中描述有所述子資源的信息,所述子資源的信息包括子資源的 類型,因此,通過解析所述文檔信息可以得到所述子資源的類型,實現(xiàn)方便又快捷。所述第一 HTTP請求消息請求的資源為當前連接下首次請求的資源,其中包括子資源,通過對請求子資源的第二 HTTP請求消息的請求頭的簡化處理,可以減少傳輸流量,達到了避免不必要的流量浪費的效果。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種請求資源的方法,其特征在于,所述方法包括: 向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源; 接收所述服務(wù)器返回的描述所述資源的文檔信息; 根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項; 對請求獲取所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項; 將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項,包括: 查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到所述子資源的類型對應(yīng)的描述項。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項之前,還包括: 預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系; 其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,根據(jù)所述文檔信息得到所述子資源的類型,包括: 解析所述文檔信息得到所述文檔信息中描述的所述子資源的信息; 根據(jù)所述子資源的信息確定所述子資源的類型。
5.根據(jù)權(quán)利要求1至4中任一項所述的方法,其特征在于,向服務(wù)器發(fā)送第一HTTP請求消息,請求獲取資源,包括: 與所述服務(wù)器建立連接; 在當前的連接下首次向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資源。
6.一種請求資源的裝置,其特征在于,所述裝置包括: 發(fā)送模塊,用于向服務(wù)器發(fā)送第一超文本傳輸協(xié)議HTTP請求消息,請求獲取資源,所述資源包括子資源; 接收模塊,用于接收所述服務(wù)器返回的描述所述資源的文檔信息; 確定模塊,用于根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定所述子資源對應(yīng)的描述項; 處理模塊,用于對請求獲取所述子資源的第二 HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項; 所述發(fā)送模塊,還用于將經(jīng)過處理后的第二 HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述確定模塊包括: 獲取單元,用于根據(jù)所述文檔信息得到所述子資源的類型; 查找單元,用于查找預(yù)設(shè)的資源類型與描述項的對應(yīng)關(guān)系,得到所述子資源的類型對應(yīng)的描述項。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 建立模塊,用于預(yù)先建立資源類型與描述項的對應(yīng)關(guān)系; 其中,每種資源類型對應(yīng)的描述項為與該資源類型相關(guān)的描述項,且每種資源類型對應(yīng)一個或一個以上描述項。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述確定模塊包括: 解析單元,用于解析所述文檔信息得到所述文檔信息中描述的所述子資源的信息,根據(jù)所述子資源的信息確定所述子資源的類型; 確定單元,用于根據(jù)所述子資源的類型確定對應(yīng)的描述項。
10.根據(jù)權(quán)利要求6至9中任一項所述的裝置,其特征在于,所述發(fā)送模塊包括: 連接單元,用于與所述服務(wù)器建立連接; 發(fā)送單元,用于在當前的連接下首次向服務(wù)器發(fā)送第一 HTTP請求消息,請求獲取資 源。
全文摘要
本發(fā)明實施例公開了一種請求資源的方法和裝置,屬于通信技術(shù)領(lǐng)域。所述方法包括向服務(wù)器發(fā)送第一HTTP請求消息,請求獲取資源,所述資源包括子資源;接收服務(wù)器返回的描述所述資源的文檔信息;根據(jù)所述文檔信息得到所述子資源的類型,根據(jù)所述子資源的類型確定該子資源對應(yīng)的描述項;對請求獲取所述子資源的第二HTTP請求消息進行處理,將請求頭部中的所述描述項保留并刪除其余描述項;將經(jīng)過處理后的第二HTTP請求消息發(fā)送給所述服務(wù)器,請求獲取所述子資源。所述裝置包括發(fā)送模塊、接收模塊、確定模塊和處理模塊。本發(fā)明實施例根據(jù)子資源的類型對請求頭部進行了相應(yīng)的簡化處理,減少了HTTP請求時的傳輸流量,避免了流量浪費。
文檔編號H04L29/08GK103227827SQ201310146009
公開日2013年7月31日 申請日期2013年4月24日 優(yōu)先權(quán)日2013年4月24日
發(fā)明者張少偉, 徐國市, 左景龍 申請人:北京小米科技有限責(zé)任公司