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