亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種客戶端與服務(wù)端交互報(bào)文的代理方法和裝置與流程

文檔序號(hào):12162115閱讀:214來源:國知局
一種客戶端與服務(wù)端交互報(bào)文的代理方法和裝置與流程

本申請(qǐng)涉及通信技術(shù)領(lǐng)域,尤其涉及一種客戶端與服務(wù)端交互報(bào)文的代理方法和裝置。



背景技術(shù):

隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,各種應(yīng)用層出不窮,為了滿足前端工程師們的各種需求,客戶端與服務(wù)端的代理工具應(yīng)運(yùn)而生。舉例來說,windows有代理工具fiddler,mac有代理工具charles等。

目前的各種代理工具往往都提供有自定義的接口,以實(shí)現(xiàn)特定的需求,比如:在用戶請(qǐng)求的頁面里面注入某個(gè)腳本。然而,隨著需求的不斷增多,需要通過同一個(gè)接口實(shí)現(xiàn)的功能越來越多,這就會(huì)導(dǎo)致代碼耦合,不利于后續(xù)的開發(fā)和維護(hù)。



技術(shù)實(shí)現(xiàn)要素:

有鑒于此,本申請(qǐng)?zhí)峁┮环N客戶端與服務(wù)端交互報(bào)文的代理方法和裝置。

具體地,本申請(qǐng)是通過如下技術(shù)方案實(shí)現(xiàn)的:

一種客戶端與服務(wù)端交互報(bào)文的代理方法,所述方法包括:

在接收到客戶端與服務(wù)端進(jìn)行交互的交互報(bào)文后,調(diào)用對(duì)應(yīng)的接口對(duì)所述交互報(bào)文進(jìn)行處理;

在處理所述交互報(bào)文的當(dāng)前接口對(duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述交互報(bào)文確定目標(biāo)任務(wù);

針對(duì)所述交互報(bào)文執(zhí)行所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述當(dāng)前接口對(duì)所述交互 報(bào)文的處理;

在調(diào)用的所有接口均對(duì)所述交互報(bào)文進(jìn)行處理后,轉(zhuǎn)發(fā)所述交互報(bào)文。

可選的,所述在所述多個(gè)任務(wù)中為所述交互報(bào)文確定目標(biāo)任務(wù),包括:

根據(jù)預(yù)設(shè)的映射關(guān)系,在所述多個(gè)任務(wù)中為所述交互報(bào)文確定對(duì)應(yīng)的目標(biāo)任務(wù)。

可選的,所述當(dāng)前接口對(duì)應(yīng)的所述多個(gè)任務(wù)之間相互獨(dú)立。

可選的,所述交互報(bào)文包括:客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文以及服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文。

可選的,當(dāng)所述交互報(bào)文是客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文時(shí),所述轉(zhuǎn)發(fā)所述交互報(bào)文包括:將所述請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給服務(wù)端;

當(dāng)所述交互報(bào)文是服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文時(shí),所述轉(zhuǎn)發(fā)所述交互報(bào)文包括:將所述響應(yīng)報(bào)文轉(zhuǎn)發(fā)給客戶端。

一種客戶端與服務(wù)端交互報(bào)文的代理裝置,所述裝置包括:

接口調(diào)用單元,在接收到客戶端與服務(wù)端進(jìn)行交互的交互報(bào)文后,調(diào)用對(duì)應(yīng)的接口對(duì)所述交互報(bào)文進(jìn)行處理;

任務(wù)確定單元,在處理所述交互報(bào)文的當(dāng)前接口對(duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述交互報(bào)文確定目標(biāo)任務(wù);

任務(wù)執(zhí)行單元,針對(duì)所述交互報(bào)文執(zhí)行所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述當(dāng)前接口對(duì)所述交互報(bào)文的處理;

報(bào)文轉(zhuǎn)發(fā)單元,在調(diào)用的所有接口均對(duì)所述交互報(bào)文進(jìn)行處理后,轉(zhuǎn)發(fā)所述交互報(bào)文。

可選的,所述任務(wù)確定單元,具體根據(jù)預(yù)設(shè)的映射關(guān)系,在所述多個(gè)任務(wù)中為所述交互報(bào)文確定對(duì)應(yīng)的目標(biāo)任務(wù)。

可選的,所述當(dāng)前接口對(duì)應(yīng)的所述多個(gè)任務(wù)之間相互獨(dú)立。

可選的,所述交互報(bào)文包括:客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文以及服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文。

可選的,當(dāng)所述交互報(bào)文是客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文時(shí),所述報(bào) 文轉(zhuǎn)發(fā)單元將所述請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給服務(wù)端;

當(dāng)所述交互報(bào)文是服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文時(shí),所述報(bào)文轉(zhuǎn)發(fā)單元將所述響應(yīng)報(bào)文轉(zhuǎn)發(fā)給客戶端。

由以上描述可以看出,本申請(qǐng)將同一接口的多個(gè)功能模塊任務(wù)化,并在處理交互報(bào)文的當(dāng)前接口對(duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述交互報(bào)文確定目標(biāo)任務(wù),并針對(duì)所述交互報(bào)文執(zhí)行所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述當(dāng)前接口對(duì)所述交互報(bào)文的處理,從而可以降低代碼的耦合度,便于后續(xù)開發(fā)和維護(hù)。

附圖說明

圖1是本申請(qǐng)一示例性實(shí)施例示出的一種客戶端與服務(wù)端交互報(bào)文的代理方法的流程示意圖。

圖2是本申請(qǐng)一示例性實(shí)施例示出的另一種客戶端與服務(wù)端交互報(bào)文的代理方法的流程示意圖。

圖3是本申請(qǐng)一示例性實(shí)施例示出的一種客戶端與服務(wù)端交互報(bào)文的代理裝置所在終端的一硬件結(jié)構(gòu)圖。

圖4是本申請(qǐng)一示例性實(shí)施例示出的一種客戶端與服務(wù)端交互報(bào)文的代理裝置的結(jié)構(gòu)框圖。

具體實(shí)施方式

這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本申請(qǐng)相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本申請(qǐng)的一些方面相一致的裝置和方法的例子。

在本申請(qǐng)使用的術(shù)語是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本申請(qǐng)。在本申請(qǐng)和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所 述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。

應(yīng)當(dāng)理解,盡管在本申請(qǐng)可能采用術(shù)語第一、第二、第三等來描述各種信息,但這些信息不應(yīng)限于這些術(shù)語。這些術(shù)語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離本申請(qǐng)范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。

針對(duì)通過同一接口實(shí)現(xiàn)多種功能所導(dǎo)致的代碼耦合度高的問題,本申請(qǐng)?zhí)峁┮环N代理方法,請(qǐng)參考圖1,圖1是本申請(qǐng)一示例性實(shí)施例示出的一種客戶端與服務(wù)端交互報(bào)文的代理方法的流程示意圖,所述代理方法可以包括以下步驟:

步驟101,在接收到客戶端與服務(wù)端進(jìn)行交互的交互報(bào)文后,調(diào)用對(duì)應(yīng)的接口對(duì)所述交互報(bào)文進(jìn)行處理。

在本實(shí)施例中,在接收到所述交互報(bào)文后,可以根據(jù)所述交互報(bào)文的類型依次調(diào)用一個(gè)或者多個(gè)接口對(duì)所述交互報(bào)文進(jìn)行處理。舉例來說,假設(shè)針對(duì)交互報(bào)文1,需要調(diào)用的接口為接口1、接口2以及接口3,則在接收到所述交互報(bào)文1之后,先調(diào)用接口1對(duì)所述交互報(bào)文1進(jìn)行處理,然后會(huì)調(diào)用接口2對(duì)所述交互報(bào)文1進(jìn)行處理,最后調(diào)用接口3對(duì)所述交互報(bào)文1進(jìn)行處理,并在接口3對(duì)所述交互報(bào)文1進(jìn)行處理完畢后,視為完成對(duì)所述交互報(bào)文1的處理。

在本實(shí)施例中,所述交互報(bào)文可以包括:客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文以及服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文。

步驟102,在處理所述交互報(bào)文的當(dāng)前接口對(duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述交互報(bào)文確定目標(biāo)任務(wù)。

在本實(shí)施例中,在需要通過某一個(gè)接口實(shí)現(xiàn)多個(gè)功能時(shí),可以將各個(gè)功 能模塊進(jìn)行拆分,使得每個(gè)功能模塊任務(wù)化,通過執(zhí)行某一個(gè)任務(wù),可以實(shí)現(xiàn)與之對(duì)應(yīng)的功能。因此,某一個(gè)接口的多個(gè)任務(wù)之間相互獨(dú)立,從而可以解決代碼耦合度高,不利于后續(xù)開發(fā)和維護(hù)等問題。

基于前述步驟101,當(dāng)調(diào)用某一接口對(duì)交互報(bào)文進(jìn)行處理時(shí),可以先判斷進(jìn)行處理的當(dāng)前接口是否對(duì)應(yīng)有多個(gè)任務(wù),如果當(dāng)前接口僅對(duì)應(yīng)有一個(gè)任務(wù),則可以針對(duì)所述交互報(bào)文執(zhí)行該任務(wù);如果當(dāng)前接口對(duì)應(yīng)有多個(gè)任務(wù),則可以根據(jù)預(yù)先設(shè)置的交互報(bào)文與目標(biāo)任務(wù)的映射關(guān)系,在所述多個(gè)任務(wù)中為所述交互報(bào)文確定對(duì)應(yīng)的目標(biāo)任務(wù)。其中,所述映射關(guān)系可以由開發(fā)人員根據(jù)需求進(jìn)行設(shè)置與維護(hù)。

舉例來說,請(qǐng)參考表1,假設(shè)接口1對(duì)應(yīng)有三個(gè)任務(wù),分別為任務(wù)A、任務(wù)B以及任務(wù)C,任務(wù)A用于實(shí)現(xiàn)功能A,任務(wù)B用于實(shí)現(xiàn)功能B,任務(wù)C用于實(shí)現(xiàn)功能C,則在本步驟中,可以根據(jù)預(yù)先設(shè)置的映射關(guān)系在任務(wù)A、任務(wù)B以及任務(wù)C中為交互報(bào)文確定目標(biāo)任務(wù)。

表1

步驟103,針對(duì)所述交互報(bào)文執(zhí)行所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述當(dāng)前接口對(duì)所述交互報(bào)文的處理。

基于前述步驟102,當(dāng)調(diào)用某一接口對(duì)交互報(bào)文進(jìn)行處理時(shí),在為所述交互報(bào)文確定目標(biāo)任務(wù)之后,執(zhí)行所述目標(biāo)任務(wù),也就是執(zhí)行該當(dāng)前接口對(duì)所述交互報(bào)文的處理過程。

以前述步驟102的舉例為例,假設(shè)根據(jù)預(yù)先設(shè)置的映射關(guān)系在任務(wù)A、任務(wù)B以及任務(wù)C中為交互報(bào)文確定的目標(biāo)任務(wù)為任務(wù)B以及任務(wù)C,則在本步驟中,針對(duì)所述交互報(bào)文執(zhí)行任務(wù)B以及任務(wù)C,以實(shí)現(xiàn)接口1對(duì)所述 交互報(bào)文的處理。

步驟104,在調(diào)用的所有接口均對(duì)所述交互報(bào)文進(jìn)行處理后,轉(zhuǎn)發(fā)所述交互報(bào)文。

由以上描述可以看出,本申請(qǐng)將同一接口的多個(gè)功能模塊任務(wù)化,并在處理交互報(bào)文的當(dāng)前接口對(duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述交互報(bào)文確定目標(biāo)任務(wù),并針對(duì)所述交互報(bào)文執(zhí)行所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述當(dāng)前接口對(duì)所述交互報(bào)文的處理,從而可以降低代碼的耦合度,便于后續(xù)開發(fā)和維護(hù)。

下面結(jié)合具體的實(shí)施例來描述本申請(qǐng)的實(shí)現(xiàn)過程。

圖2是本申請(qǐng)一示例性實(shí)施例示出的另一種客戶端與服務(wù)端交互報(bào)文的代理方法的流程示意圖。

請(qǐng)參考圖2,假設(shè)針對(duì)客戶端發(fā)送的請(qǐng)求報(bào)文需要調(diào)用第一接口,針對(duì)服務(wù)端發(fā)送的響應(yīng)報(bào)文需要調(diào)用第二接口,則所述代理方法可以包括以下步驟:

步驟201,接收客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文。

步驟202,調(diào)用第一接口對(duì)所述請(qǐng)求報(bào)文進(jìn)行處理。

步驟203,當(dāng)?shù)谝唤涌趯?duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述請(qǐng)求報(bào)文確定目標(biāo)任務(wù)。

步驟204,針對(duì)所述請(qǐng)求報(bào)文執(zhí)行步驟203中確定的所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述第一接口對(duì)所述請(qǐng)求報(bào)文的處理。

步驟205,將所述請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給服務(wù)端。

步驟206,接收服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文。

步驟207,調(diào)用第二接口對(duì)所述響應(yīng)報(bào)文進(jìn)行處理。

步驟208,當(dāng)?shù)诙涌趯?duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述響應(yīng)報(bào)文確定目標(biāo)任務(wù)。

步驟209,針對(duì)所述響應(yīng)報(bào)文執(zhí)行步驟208中確定的所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述第二接口對(duì)所述響應(yīng)報(bào)文的處理。

步驟210,將所述響應(yīng)報(bào)文轉(zhuǎn)發(fā)給客戶端。

在圖2所示的實(shí)施例中,可以采用前述圖1所示的方法實(shí)施例對(duì)客戶端與服務(wù)端之間的交互報(bào)文進(jìn)行處理,在此不再贅述。

與前述客戶端與服務(wù)端交互報(bào)文的代理方法的實(shí)施例相對(duì)應(yīng),本申請(qǐng)還提供了客戶端與服務(wù)端交互報(bào)文的代理裝置的實(shí)施例。

本申請(qǐng)客戶端與服務(wù)端交互報(bào)文的代理裝置的實(shí)施例可以應(yīng)用在終端上。裝置實(shí)施例可以通過軟件實(shí)現(xiàn),也可以通過硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過其所在終端的處理器將非易失性存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存中運(yùn)行形成的。從硬件層面而言,如圖3所示,為本申請(qǐng)客戶端與服務(wù)端交互報(bào)文的代理裝置所在終端的一種硬件結(jié)構(gòu)圖,除了圖3所示的處理器、內(nèi)存、網(wǎng)絡(luò)接口、以及非易失性存儲(chǔ)器之外,實(shí)施例中裝置所在的終端通常根據(jù)該終端的實(shí)際功能,還可以包括其他硬件,對(duì)此不再贅述。

請(qǐng)參考圖4,圖4是本申請(qǐng)一示例性實(shí)施例示出的一種客戶端與服務(wù)端交互報(bào)文的代理裝置的結(jié)構(gòu)框圖,所述客戶端與服務(wù)端交互報(bào)文的代理裝置300可以包括:接口調(diào)用單元301、任務(wù)確定單元302、任務(wù)執(zhí)行單元303以及報(bào)文轉(zhuǎn)發(fā)單元304。

其中,所述接口調(diào)用單元301,在接收到客戶端與服務(wù)端進(jìn)行交互的交互報(bào)文后,調(diào)用對(duì)應(yīng)的接口對(duì)所述交互報(bào)文進(jìn)行處理;

所述任務(wù)確定單元302,在處理所述交互報(bào)文的當(dāng)前接口對(duì)應(yīng)有多個(gè)任務(wù)時(shí),在所述多個(gè)任務(wù)中為所述交互報(bào)文確定目標(biāo)任務(wù);

所述任務(wù)執(zhí)行單元303,針對(duì)所述交互報(bào)文執(zhí)行所述目標(biāo)任務(wù),以實(shí)現(xiàn)所述當(dāng)前接口對(duì)所述交互報(bào)文的處理;

所述報(bào)文轉(zhuǎn)發(fā)單元304,在調(diào)用的所有接口均對(duì)所述交互報(bào)文進(jìn)行處理后,轉(zhuǎn)發(fā)所述交互報(bào)文。

可選的,所述任務(wù)確定單元302,具體根據(jù)預(yù)設(shè)的映射關(guān)系,在所述多個(gè)任務(wù)中為所述交互報(bào)文確定對(duì)應(yīng)的目標(biāo)任務(wù)。

可選的,所述當(dāng)前接口對(duì)應(yīng)的所述多個(gè)任務(wù)之間相互獨(dú)立。

可選的,所述交互報(bào)文包括:客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文以及服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文。

可選的,當(dāng)所述交互報(bào)文是客戶端發(fā)送給服務(wù)端的請(qǐng)求報(bào)文時(shí),所述報(bào)文轉(zhuǎn)發(fā)單元304將所述請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給服務(wù)端;

當(dāng)所述交互報(bào)文是服務(wù)端針對(duì)所述請(qǐng)求報(bào)文發(fā)送給客戶端的響應(yīng)報(bào)文時(shí),所述報(bào)文轉(zhuǎn)發(fā)單元304將所述響應(yīng)報(bào)文轉(zhuǎn)發(fā)給客戶端。

上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過程具體詳見上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過程,在此不再贅述。

對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本申請(qǐng)方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。

以上所述僅為本申請(qǐng)的較佳實(shí)施例而已,并不用以限制本申請(qǐng),凡在本申請(qǐng)的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)保護(hù)的范圍之內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1