本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種信息處理方法及裝置。
背景技術(shù):
在互聯(lián)網(wǎng)時(shí)代,隨著終端的普及,各類應(yīng)用的數(shù)量也大大增加,給人們的日常生活和工作帶來(lái)了便利。所述終端包括但不限于:手機(jī)、個(gè)人計(jì)算機(jī)、平板電腦、智能手表、車載臺(tái),等等。
一般地,應(yīng)用的客戶端搭載于終端上,而服務(wù)端搭載于該應(yīng)用的服務(wù)器或終端上。在終端上安裝應(yīng)用的客戶端后,該客戶端一般會(huì)包含有配置信息,而在使用該客戶端的過(guò)程中,該客戶端可能經(jīng)常需要從服務(wù)端獲取更新的配置信息或其他配置信息(為了便于描述,所述更新的配置信息、所述其他配置信息可以統(tǒng)稱為:配置信息的更新信息),以實(shí)現(xiàn)對(duì)客戶端的更新和功能升級(jí)。
例如,對(duì)于某種信息卡片應(yīng)用,該信息卡片應(yīng)用的客戶端的配置信息,以及該配置信息的更新信息包括但不限于:界面模板、全局應(yīng)用設(shè)置信息、場(chǎng)景引擎規(guī)則、菜單信息,等等。
在現(xiàn)有技術(shù)中,客戶端可以采用定時(shí)時(shí)鐘方案,從服務(wù)端獲取配置信息的更新信息。具體的,客戶端可以啟動(dòng)一個(gè)定時(shí)線程,定時(shí)調(diào)用服務(wù)端提供的、用于更新配置信息的接口,以請(qǐng)求查詢是否有該配置信息的更新信息,則服務(wù)端接收到請(qǐng)求后,當(dāng)查詢到有更新信息時(shí),將該更新信息返回給客戶端。
但是,在采用現(xiàn)有技術(shù)的情況下,客戶端啟動(dòng)后,所述定時(shí)線程會(huì)一直占用客戶端部分資源,客戶端的負(fù)擔(dān)較大。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)實(shí)施例提供一種信息處理方法及裝置,用以解決現(xiàn)有技術(shù)中的客戶端獲取配置信息的更新信息的方法,導(dǎo)致客戶端的負(fù)擔(dān)較大的問(wèn)題。
本申請(qǐng)實(shí)施例提供的一種信息處理方法,包括:
根據(jù)客戶端上生成的、針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求;
將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端。
本申請(qǐng)實(shí)施例提供的一種信息處理裝置,包括:
生成模塊,用于根據(jù)客戶端上生成的、針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求;
發(fā)送模塊,用于將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端。
本申請(qǐng)實(shí)施例提供另一種信息處理方法及裝置,用以解決現(xiàn)有技術(shù)中的客戶端獲取配置信息的更新信息的方法,導(dǎo)致客戶端的負(fù)擔(dān)較大的問(wèn)題。
本申請(qǐng)實(shí)施例提供的另一種信息處理方法,包括:
接收客戶端發(fā)送的服務(wù)請(qǐng)求,其中,所述服務(wù)請(qǐng)求包括所述客戶端針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息;
根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,確定并向所述客戶端返回更新指示信息,所述更新指示信息用于指示所述配置信息的更新信息。
本申請(qǐng)實(shí)施例提供的另一種信息處理裝置,包括:
接收模塊,用于接收客戶端發(fā)送的服務(wù)請(qǐng)求,其中,所述服務(wù)請(qǐng)求包括所述客戶端針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息;
返回模塊,用于根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,確定并向所述客戶端返回更新指示信息,所述更新指示信息用于指示所述配置信息的更新信 息。
本申請(qǐng)實(shí)施例提供一種終端,包括:
存儲(chǔ)器,用于存儲(chǔ)處理器可執(zhí)行指令;
處理器,耦合到所述存儲(chǔ)器,用于讀取所述存儲(chǔ)器存儲(chǔ)的可執(zhí)行指令,作為響應(yīng),執(zhí)行如下操作:根據(jù)客戶端上生成的、針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求;將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端。
本申請(qǐng)實(shí)施例提供另一種終端,包括:
存儲(chǔ)器,用于存儲(chǔ)處理器可執(zhí)行指令;
處理器,耦合到所述存儲(chǔ)器,用于讀取所述存儲(chǔ)器存儲(chǔ)的可執(zhí)行指令,作為響應(yīng),執(zhí)行如下操作:接收客戶端發(fā)送的服務(wù)請(qǐng)求,其中,所述服務(wù)請(qǐng)求包括所述客戶端針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息;根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,確定并向所述客戶端返回更新指示信息,所述更新指示信息用于指示所述配置信息的更新信息。
本申請(qǐng)實(shí)施例通過(guò)上述至少一種技術(shù)方案,客戶端可以利用已有的任一服務(wù)接口獲取配置信息的更新信息,而不需要為了獲取該更新信息單獨(dú)維護(hù)一個(gè)定時(shí)線程,因此,可以減輕客戶端的負(fù)擔(dān)。
附圖說(shuō)明
此處所說(shuō)明的附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
圖1為本申請(qǐng)實(shí)施例提供的信息處理方法的過(guò)程;
圖2為本申請(qǐng)實(shí)施例提供的,在一種實(shí)際應(yīng)用場(chǎng)景下,客戶端上的代理單元的實(shí)現(xiàn)方式和工作方式;
圖3為本申請(qǐng)實(shí)施例提供的另一種信息處理方法的過(guò)程;
圖4為本申請(qǐng)實(shí)施例提供的,在一種實(shí)際應(yīng)用場(chǎng)景下,實(shí)施所述信息處理方法時(shí),客戶端和服務(wù)端的交互示意圖;
圖5為本申請(qǐng)實(shí)施例提供的,在一種實(shí)際應(yīng)用場(chǎng)景下,適用于實(shí)施所述信息處理方法的系統(tǒng)結(jié)構(gòu)示意圖;
圖6為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖1的信息處理裝置結(jié)構(gòu)示意圖;
圖7為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖3的信息處理裝置結(jié)構(gòu)示意圖;
圖8為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖1的終端示意圖;
圖9為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖3的終端示意圖。
具體實(shí)施方式
為使本申請(qǐng)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請(qǐng)具體實(shí)施例及相應(yīng)的附圖對(duì)本申請(qǐng)技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
在本申請(qǐng)實(shí)施例中,對(duì)于任一應(yīng)用,該應(yīng)用的服務(wù)端可以為該應(yīng)用的客戶端提供不止一項(xiàng)服務(wù)。
例如,對(duì)于即時(shí)通訊應(yīng)用,服務(wù)端提供的服務(wù)包括但不限于:查詢通訊消息、傳輸通訊消息、查詢指定通訊賬號(hào)的公開(kāi)信息、傳輸文件,等等。
又例如,對(duì)于視頻應(yīng)用,服務(wù)端提供的服務(wù)包括但不限于:視頻點(diǎn)播、視頻直播、視頻離線下載,等等。
服務(wù)端可以預(yù)先針對(duì)每項(xiàng)服務(wù),向客戶端提供用于獲取該項(xiàng)服務(wù)的服務(wù)接口,相應(yīng)的,客戶端可以生成針對(duì)該服務(wù)接口的接口調(diào)用請(qǐng)求,并通過(guò)該服務(wù)接口發(fā)送給服務(wù)端,則服務(wù)端通過(guò)該服務(wù)接口對(duì)應(yīng)的接口實(shí)現(xiàn)單元,對(duì)該接口調(diào)用請(qǐng)求進(jìn)行處理,進(jìn)而可以向客戶端返回該項(xiàng)服務(wù)??梢钥吹?,各項(xiàng)服務(wù)對(duì) 應(yīng)的服務(wù)接口是已經(jīng)存在的,且有相應(yīng)的服務(wù)進(jìn)程為服務(wù)接口提供資源支持。
在本申請(qǐng)實(shí)施例中,利用這些已經(jīng)存在的服務(wù)接口和對(duì)應(yīng)的服務(wù)進(jìn)程,不僅可以獲得對(duì)應(yīng)的服務(wù),還可以處理一些額外的事務(wù),從而可以不用為所述額外的事務(wù)單獨(dú)提供接口和進(jìn)程,這樣的話,不僅可以減輕服務(wù)端和客戶端的負(fù)擔(dān),也可以減少額外的網(wǎng)絡(luò)調(diào)用,其中,所述額外的事務(wù)至少可以包括客戶端獲取自身上的配置信息的更新信息。本申請(qǐng)實(shí)施例主要基于這種情況進(jìn)行詳細(xì)說(shuō)明。
圖1為本申請(qǐng)實(shí)施例提供的信息處理方法的過(guò)程,所述信息處理方法的執(zhí)行主體可以是:應(yīng)用的客戶端,或者,搭載有所述客戶端的終端。其中,所述終端包括但不限于:個(gè)人計(jì)算機(jī)、手機(jī)、平板電腦、智能手表、車載移動(dòng)臺(tái)等。所述的執(zhí)行主體并不構(gòu)成對(duì)本申請(qǐng)的限定,為了便于描述,圖1對(duì)應(yīng)的各實(shí)施例均以執(zhí)行主體是客戶端為例進(jìn)行說(shuō)明。
圖1中的過(guò)程具體可以包括以下步驟:
S101:根據(jù)客戶端上生成的、針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求。
在本申請(qǐng)實(shí)施例中,客戶端當(dāng)接收到服務(wù)獲取指令時(shí),生成針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求。所述服務(wù)獲取指令可以是:用于指示客戶端從服務(wù)端,獲取服務(wù)端提供的任一項(xiàng)服務(wù)的指令。
本申請(qǐng)實(shí)施例對(duì)“接收服務(wù)獲取指令”這一動(dòng)作的觸發(fā)因素并不做限定,在實(shí)際應(yīng)用中,這一動(dòng)作可以由用戶對(duì)客戶端的操作觸發(fā),也可以由客戶端根據(jù)預(yù)設(shè)業(yè)務(wù)邏輯自動(dòng)觸發(fā)。
例如,用戶在使用即時(shí)通訊應(yīng)用時(shí),可能會(huì)在應(yīng)用界面編輯一條通訊消息,并點(diǎn)擊“發(fā)送”按鈕,將該條通訊消息發(fā)送給另一位用戶。在該例中,可以認(rèn)為,該“發(fā)送”按鈕被按下后,客戶端即接收到一條服務(wù)獲取指令,該條服務(wù)獲取指令用于指示客戶端從服務(wù)端提供的“傳輸通訊消息”這項(xiàng)服務(wù)對(duì)應(yīng)的服 務(wù)接口獲取服務(wù)。
在本申請(qǐng)實(shí)施例中,所述接口調(diào)用請(qǐng)求可以包含所述至少一個(gè)服務(wù)接口的接口函數(shù),以及所述接口函數(shù)的調(diào)用參數(shù),其中,調(diào)用參數(shù)可以是由服務(wù)獲取指令指定的,也可以是用戶在客戶端上實(shí)時(shí)地輸入的。
在本申請(qǐng)實(shí)施例中,除了要獲取接口調(diào)用請(qǐng)求對(duì)應(yīng)的服務(wù)以外,同時(shí)還可以獲取客戶端上的配置信息的更新信息,因此,可以不直接向服務(wù)端發(fā)送接口調(diào)用請(qǐng)求,而是對(duì)針對(duì)服務(wù)接口和/或接口調(diào)用請(qǐng)求進(jìn)行特定處理,以加入獲取該更新信息所需要的額外的信息(也即,客戶端上的配置信息的狀態(tài)信息),進(jìn)而將特定處理后生成的請(qǐng)求發(fā)送給服務(wù)端。在本申請(qǐng)實(shí)施例中,所述特定處理至少可以包括兩種,下面對(duì)這兩種分別進(jìn)行說(shuō)明。
第一種,可以預(yù)先對(duì)客戶端上用于生成接口調(diào)用請(qǐng)求的服務(wù)接口單元進(jìn)行修改,以加入包含所述狀態(tài)信息的處理邏輯,這樣的話,通過(guò)修改后的服務(wù)接口單元,可以生成包含有所述狀態(tài)信息的接口調(diào)用請(qǐng)求,并發(fā)送給服務(wù)端。第一種處理方法不用改變客戶端上各單元的結(jié)構(gòu)。
第二種,也即步驟S101對(duì)應(yīng)的處理方法。具體的,可以預(yù)先在客戶端上增加代理單元,則客戶端可以將生成的接口調(diào)用請(qǐng)求傳遞給代理單元,由代理單元執(zhí)行步驟S101,進(jìn)而可以將生成的、包含所述狀態(tài)信息的服務(wù)請(qǐng)求發(fā)送給服務(wù)端。第二種處理方法實(shí)現(xiàn)成本較低,對(duì)客戶端和服務(wù)端上已有的接口影響較小。
在實(shí)際應(yīng)用中,可以根據(jù)應(yīng)用場(chǎng)景的具體情況,在以上兩種處理方法中選擇更適用的方法。本申請(qǐng)實(shí)施例主要是基于上述的第二種處理方法進(jìn)行說(shuō)明的。
進(jìn)一步的,為了便于理解,下面對(duì)所述配置信息進(jìn)行說(shuō)明。
安裝應(yīng)用的客戶端后,該客戶端一般會(huì)包含有配置信息,而在使用該客戶端的過(guò)程中,該客戶端可能經(jīng)常需要從服務(wù)端獲取更新的配置信息或其他配置信息(為了便于描述,所述更新的配置信息、所述其他配置信息可以統(tǒng)稱為: 配置信息的更新信息),以實(shí)現(xiàn)對(duì)客戶端的更新和功能升級(jí)。
需要說(shuō)明的是,本申請(qǐng)實(shí)施例對(duì)所述配置信息和所述配置信息的更新信息的格式、文件類型、具體內(nèi)容并不做限定。在實(shí)際應(yīng)用中,所述配置信息和所述配置信息的更新信息可以是:界面模板、全局應(yīng)用設(shè)置信息、場(chǎng)景引擎規(guī)則、菜單信息、追加內(nèi)容下載包、應(yīng)用補(bǔ)丁,等等。
S102:將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端。
在本申請(qǐng)實(shí)施例中,可以通過(guò)步驟S101中提到的所述的至少一個(gè)服務(wù)接口,也可以通過(guò)服務(wù)端提供的其他服務(wù)接口,將服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端。
在本申請(qǐng)實(shí)施例中,服務(wù)端在接收到服務(wù)信息后,可以根據(jù)服務(wù)信息中包含的所述狀態(tài)信息,向客戶端返回更新指示信息,以便于客戶端根據(jù)更新指示信息,獲取配置信息的更新信息。
所述更新指示信息可以用于指示是否有配置信息的更新信息,以及有哪些更新信息,等等。例如,所述更新指示信息可以是所述配置信息的更新信息,可以是所述配置信息的更新信息的標(biāo)識(shí),也可以是所述配置信息的更新信息的下載地址,等等。
在本申請(qǐng)實(shí)施例中,對(duì)于客戶端根據(jù)更新指示信息,獲取配置信息的更新信息這一步驟,可以有多種實(shí)施方式。
例如,當(dāng)更新信息的數(shù)據(jù)量較少時(shí),可以將更新信息攜帶在更新指示信息中,則客戶端可以從更新指示信息中直接獲取到更新信息,這樣的話,可以降低客戶端與服務(wù)端之間的消息交互次數(shù),節(jié)省網(wǎng)絡(luò)資源。
又例如,當(dāng)更新信息的數(shù)據(jù)量較多時(shí),可以將更新信息的標(biāo)識(shí)攜帶在更新指示信息,后續(xù)客戶端可以根據(jù)更新信息的標(biāo)識(shí),在網(wǎng)絡(luò)空閑時(shí)或是其他指定時(shí)刻從服務(wù)端下載更新信息,這樣的話,可以提高獲取更新信息的成功率,也可以減輕客戶端的負(fù)擔(dān)。
通過(guò)上述方法,客戶端可以利用已有的任一服務(wù)接口獲取配置信息的更新信息,而不需要為了獲取該更新信息單獨(dú)維護(hù)一個(gè)定時(shí)線程,因此,可以減輕 客戶端的負(fù)擔(dān),其中,所述負(fù)擔(dān)包括對(duì)處理器資源、內(nèi)存資源、電量資源等資源的消耗。
不僅如此,由于上述方法可以將查詢以及獲取配置信息的更新信息這一動(dòng)作的觸發(fā)時(shí)機(jī),融入到客戶端與服務(wù)端提供的任一服務(wù)接口的交互過(guò)程中,因此,沒(méi)有增加額外的針對(duì)服務(wù)端的網(wǎng)絡(luò)調(diào)用,而且也可以比較及時(shí)地獲取更新信息,而不用像在現(xiàn)有技術(shù)中需要等待定時(shí)線程觸發(fā)獲取更新信息。
例如,用戶使用客戶端上的即時(shí)通訊應(yīng)用發(fā)送即時(shí)通訊消息(向服務(wù)端請(qǐng)求獲取“傳輸通訊消息”這項(xiàng)服務(wù))時(shí),可以觸發(fā)客戶端向服務(wù)端發(fā)送服務(wù)請(qǐng)求,服務(wù)端成功響應(yīng)該服務(wù)請(qǐng)求后,客戶端不僅可以獲取到服務(wù)端提供的“傳輸通訊消息”這項(xiàng)服務(wù),還可以獲得配置信息的更新信息。
需要說(shuō)明的是,以上只是用“傳輸通訊消息”這項(xiàng)服務(wù)舉例說(shuō)明,在實(shí)際應(yīng)用中,客戶端在獲取任一項(xiàng)服務(wù)的過(guò)程中,也可以通過(guò)上述方法,獲得配置信息的更新信息,或者,完成其他額外的事務(wù)。
為了便于理解,下面對(duì)圖1中的步驟進(jìn)一步地詳細(xì)說(shuō)明。
在本申請(qǐng)實(shí)施例中,服務(wù)請(qǐng)求中包含的所述狀態(tài)信息可以是:可用于讓服務(wù)端確定客戶端上的配置信息是否存在更新信息的任意信息。在實(shí)際應(yīng)用中,該狀態(tài)信息可以是該配置信息的最新更新時(shí)間,也可以是該配置信息的標(biāo)識(shí),等等。以所述配置信息是界面模板為例進(jìn)行說(shuō)明。
假定客戶端上的配置信息包括兩個(gè)界面模板,名稱分別為“界面模板1”、“界面模板2”,其中,客戶端下載到這兩個(gè)界面模板的時(shí)間是2014年1月1日。該配置信息的狀態(tài)信息可以是“界面模板1”和“界面模板2”,服務(wù)端根據(jù)該狀態(tài)信息可以查詢自身上是否保存有客戶端上沒(méi)有的界面模板;類似的,該配置信息的狀態(tài)信息也可以是時(shí)間2014年1月1日,服務(wù)端根據(jù)該時(shí)間可以查詢服務(wù)端在該時(shí)間以后更新的界面模板,也即,客戶端上沒(méi)有的界面模板。進(jìn)而服務(wù)端生成并客戶端返回更新指示信息,該更新指示信息可以是所述更新的界面模板,或所述更新的界面模板的名稱,等等。
在本申請(qǐng)實(shí)施例中,狀態(tài)信息可以以不同的方式包含在服務(wù)請(qǐng)求中。
例如,狀態(tài)信息通過(guò)所述服務(wù)請(qǐng)求的預(yù)定字段進(jìn)行保存,包含在所述服務(wù)請(qǐng)求中,或者,可以將狀態(tài)信息寫入文件或消息中,由服務(wù)請(qǐng)求攜帶寫入了狀態(tài)信息的文件或消息。前一種方案實(shí)現(xiàn)成本較小,后一種方案可以對(duì)狀態(tài)信息的文件或消息進(jìn)一步地加密等操作,以提高信息安全性,可以根據(jù)實(shí)際應(yīng)用場(chǎng)景,選擇更適用的方案。在本申請(qǐng)實(shí)施例中,主要是基于前一種方案進(jìn)行說(shuō)明的。
在本申請(qǐng)實(shí)施例中,步驟S101中的接口調(diào)用請(qǐng)求可以包含所述至少一個(gè)服務(wù)接口的接口函數(shù),以及所述接口函數(shù)的調(diào)用參數(shù)。
對(duì)于步驟S101,根據(jù)客戶端上生成的、針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求,具體可以包括:確定所述接口調(diào)用請(qǐng)求對(duì)應(yīng)的代理實(shí)現(xiàn)類,其中,所述代理實(shí)現(xiàn)類是根據(jù)所述接口函數(shù)和所述預(yù)定字段生成的;根據(jù)所述代理實(shí)現(xiàn)類、所述接口函數(shù)的調(diào)用參數(shù)和所述狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求。需要說(shuō)明的是,本申請(qǐng)實(shí)施例對(duì)所述預(yù)定字段的名稱、字節(jié)數(shù)等信息并不做限定。
在本申請(qǐng)實(shí)施例中,不同的接口調(diào)用請(qǐng)求可以對(duì)應(yīng)于不同的代理實(shí)現(xiàn)類,通過(guò)代理實(shí)現(xiàn)類可以在客戶端上的原有接口的功能的基礎(chǔ)上修改或擴(kuò)展,且不影響原有接口的邏輯。
服務(wù)請(qǐng)求用于向服務(wù)端請(qǐng)求獲?。涸摻涌诤瘮?shù)對(duì)應(yīng)的服務(wù),以及客戶端上的配置信息的更新信息。本申請(qǐng)實(shí)施例對(duì)生成代理實(shí)現(xiàn)類的生成方式并不做限定,可以是客戶端上預(yù)設(shè)的代理單元生成的,也可以是由客戶端上已有任一單元生成的。
服務(wù)請(qǐng)求可以是一個(gè)請(qǐng)求;也可以是由至少兩個(gè)子請(qǐng)求組成的請(qǐng)求,其中,某個(gè)子請(qǐng)求可以用于請(qǐng)求獲取該服務(wù),另一個(gè)子請(qǐng)求可以用于請(qǐng)求獲取該更新信息,等等。對(duì)于后一種情況,在將服務(wù)請(qǐng)求發(fā)送給服務(wù)端的過(guò)程中,將該服 務(wù)請(qǐng)求包含的至少兩個(gè)子請(qǐng)求同時(shí)發(fā)送給服務(wù)端,也可以按照預(yù)定發(fā)送順序,將至少兩個(gè)子請(qǐng)求分別發(fā)送給服務(wù)端,本申請(qǐng)實(shí)施例對(duì)所述預(yù)定發(fā)送順序并不做限定。
進(jìn)一步的,根據(jù)所述代理實(shí)現(xiàn)類、所述接口函數(shù)的調(diào)用參數(shù)和所述狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求,具體可以包括:根據(jù)所述代理實(shí)現(xiàn)類,對(duì)所述接口函數(shù)的調(diào)用參數(shù)進(jìn)行轉(zhuǎn)換,生成服務(wù)參數(shù);獲取所述狀態(tài)信息,并通過(guò)所述預(yù)定字段保存所述狀態(tài)信息;根據(jù)所述代理實(shí)現(xiàn)類、所述服務(wù)參數(shù)和保存了所述狀態(tài)信息的所述預(yù)定字段,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求。
所述轉(zhuǎn)換過(guò)程中涉及的操作包括但不限于:映射操作、封裝操作、參數(shù)修改操作、權(quán)限修改操作、等等。本申請(qǐng)實(shí)施例對(duì)客戶端上負(fù)責(zé)管理、維護(hù)以及使用所述預(yù)定字段的單元并不做限定,可以由代理單元負(fù)責(zé),也可以由其他單元負(fù)責(zé)。
在實(shí)際應(yīng)用中,當(dāng)客戶端上預(yù)設(shè)有代理單元時(shí),可以由該代理單元實(shí)現(xiàn)步驟S101,這樣的話,便于客戶端管理各接口調(diào)用請(qǐng)求的發(fā)送過(guò)程。需要說(shuō)明的是,本申請(qǐng)實(shí)施例對(duì)于所述代理單元的實(shí)現(xiàn)方式并不做限定。為了便于理解,下面對(duì)在一種實(shí)際應(yīng)用場(chǎng)景下,可以采用的代理單元的實(shí)現(xiàn)方式,以及代理單元的工作方式舉例進(jìn)行說(shuō)明。
代理單元在客戶端上運(yùn)行,假定在服務(wù)端提供的某服務(wù)接口中定義有兩個(gè)接口函數(shù),如下所示:
如圖2所示,代理單元的實(shí)現(xiàn)方式和工作方式具體可以包括以下步驟(各所述步驟的執(zhí)行主體可以為該代理單元):
S201:構(gòu)造工廠類,其中,所述工廠類中包含用于創(chuàng)建代理實(shí)現(xiàn)類的函數(shù)。
調(diào)用代碼舉例說(shuō)明:
TPSClient client=TPSClient.getTpsClient();
ItemQueryService service=
Client.getService(“com.yunos.item.service.ItemQueryService”,ItemQueryServ ice.class);
List<ItemEntity>list=service.queryTopItemList();
所述工廠類可以為TPSClient,所述函數(shù)可以為TPSClient.getTpsClient()。
S202:根據(jù)所述函數(shù),為服務(wù)接口創(chuàng)建對(duì)應(yīng)的代理實(shí)現(xiàn)類。
所述服務(wù)接口可以為ItemQueryService,創(chuàng)建的該代理實(shí)現(xiàn)類也即為針對(duì)該服務(wù)接口的接口調(diào)用請(qǐng)求對(duì)應(yīng)的代理實(shí)現(xiàn)類。
S203:根據(jù)接收到的接口調(diào)用請(qǐng)求,在所述代理實(shí)現(xiàn)類中,構(gòu)造請(qǐng)求對(duì)象,其中所述請(qǐng)求對(duì)象用于傳遞與針對(duì)服務(wù)接口的接口調(diào)用請(qǐng)求相關(guān)的信息。
繼續(xù)調(diào)用代碼舉例說(shuō)明:
Request req=new Request();
req.setServiceName(service);
req.setMethod(method.getName());
req.setParameters(GsonUtil.toJson(args));
其中,所述請(qǐng)求對(duì)象可以是req,所述相關(guān)的信息可以是調(diào)用參數(shù)、接口 函數(shù)等。
S204:將接口調(diào)用請(qǐng)求包含的調(diào)用參數(shù)進(jìn)行轉(zhuǎn)換后,保存在所述請(qǐng)求對(duì)象中。
具體的,可以將調(diào)用參數(shù)轉(zhuǎn)換為超文本傳輸協(xié)議(HyperText Transfer Protocol,http)請(qǐng)求參數(shù),其中,parameters中是對(duì)調(diào)用參數(shù)轉(zhuǎn)換生成的json字符串。
S205:獲取客戶端上的配置信息的狀態(tài)信息。
以所述狀態(tài)信息為配置信息的最新更新時(shí)間為例進(jìn)行說(shuō)明,可以將最新更新時(shí)間通過(guò)預(yù)定字段(如gmtFlag字段)進(jìn)行保存和傳遞。另外,若客戶端并未記錄狀態(tài)信息,則后續(xù)可以向服務(wù)端發(fā)送默認(rèn)值,如0。
S206:根據(jù)代理實(shí)現(xiàn)類、請(qǐng)求參數(shù)和狀態(tài)信息,生成包含該狀態(tài)信息的服務(wù)請(qǐng)求。
S207:將服務(wù)請(qǐng)求通過(guò)服務(wù)接口,發(fā)送給服務(wù)端。
服務(wù)端通過(guò)服務(wù)接口接收到服務(wù)請(qǐng)求后,一方面可以根據(jù)所述服務(wù)請(qǐng)求,解析出接口調(diào)用請(qǐng)求,進(jìn)而通過(guò)該服務(wù)接口的實(shí)現(xiàn)單元為客戶端返回對(duì)應(yīng)的服務(wù);另一方面,可以根據(jù)服務(wù)請(qǐng)求包含的狀態(tài)信息,確定更新指示信息并返回給客戶端,以便于客戶端根據(jù)該更新指示信息獲取配置信息的更新信息。
因此,對(duì)于步驟S102,在將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端,還可以執(zhí)行如下步驟:接收所述服務(wù)端根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,返回的更新指示信息;根據(jù)所述更新指示信息,獲取所述配置信息的更新信息。
例如,在狀態(tài)信息是配置信息的最新更新時(shí)間的情況下,服務(wù)端接收到包含配置信息的最新更新時(shí)間(為了便于描述,稱為:客戶端更新時(shí)間)的服務(wù)請(qǐng)求后,可以將客戶端更新時(shí)間,與服務(wù)端保存的配置信息的最新更新時(shí)間(為了便于描述,稱為:服務(wù)端更新時(shí)間)進(jìn)行比較。若服務(wù)端更新時(shí)間大于客戶端更新時(shí)間,則可以表示服務(wù)端保存有客戶端尚未獲得的更新信息,進(jìn)而服務(wù)端可以將該更新信息或該更新信息的標(biāo)識(shí)作為更新指示信息,返回給客戶端; 若服務(wù)端更新時(shí)間不大于客戶端更新時(shí)間,則可以表示服務(wù)端未保存有客戶端尚未獲得的更新信息,也即,客戶端上的配置信息已是最新,當(dāng)前無(wú)需更新,在這種情況下,服務(wù)端向客戶端返回的更新指示信息也可以用于告知客戶端無(wú)需更新配置信息。
在本申請(qǐng)實(shí)施例中,所述更新指示信息可以包括:所述配置信息的更新信息的標(biāo)識(shí),或者,所述配置信息的更新信息;等等。
當(dāng)所述更新指示信息包括所述配置信息的更新信息的標(biāo)識(shí)時(shí),根據(jù)所述更新指示信息,獲取所述配置信息的更新信息,具體可以包括:根據(jù)所述配置信息的更新信息的標(biāo)識(shí),從所述服務(wù)端獲取所述配置信息的更新信息。
當(dāng)所述更新指示信息包括所述配置信息的更新信息時(shí),根據(jù)所述更新指示信息,獲取所述配置信息的更新信息,具體可以包括:從所述更新指示信息中,獲取所述配置信息的更新信息。
以上是從客戶端角度,說(shuō)明的本申請(qǐng)實(shí)施例提供的信息處理方法,基于同樣的思路,本申請(qǐng)實(shí)施例還提供了對(duì)應(yīng)于圖1的另一種信息處理方法,所述另一種信息處理方法是從服務(wù)端角度進(jìn)行說(shuō)明的,如圖3所示。
圖3為本申請(qǐng)實(shí)施例提供的另一種信息處理方法的過(guò)程,所述另一種信息處理方法的執(zhí)行主體可以是:應(yīng)用的服務(wù)端,或者搭載有所述服務(wù)端的終端或服務(wù)器。所述的執(zhí)行主體并不構(gòu)成對(duì)本申請(qǐng)的限定,為了便于描述,圖3對(duì)應(yīng)的各實(shí)施例均以執(zhí)行主體是所述服務(wù)端為例進(jìn)行說(shuō)明。
圖3中的過(guò)程具體可以包括以下步驟:
S301:接收客戶端發(fā)送的服務(wù)請(qǐng)求,其中,所述服務(wù)請(qǐng)求包括所述客戶端針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息。
S302:根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,確定并向所述客戶端返回更新指示信息,所述更新指示信息用于指示所述配置信息的更新信息。
在本申請(qǐng)實(shí)施例中,服務(wù)端接收到服務(wù)請(qǐng)求后,一方面可以由接收服務(wù)請(qǐng) 求的服務(wù)接口對(duì)應(yīng)的服務(wù)接口實(shí)現(xiàn)單元返回對(duì)應(yīng)的服務(wù);另一方面,可以由服務(wù)請(qǐng)求包含的狀態(tài)信息,確定更新指示信息,或者,該服務(wù)接口也可以將該狀態(tài)信息傳遞給服務(wù)端上預(yù)設(shè)的消息處理單元,由于該消息處理單元根據(jù)該狀態(tài)信息,確定更新指示信息并返回給客戶端,以便于客戶端根據(jù)該更新指示信息,獲取配置信息的更新信息。
通過(guò)上述方法,客戶端可以利用服務(wù)端提供的任一服務(wù)接口,獲取配置信息的更新信息,而不需要為了獲取該更新信息單獨(dú)維護(hù)一個(gè)定時(shí)線程,因此,可以減輕客戶端的負(fù)擔(dān),也可以減少服務(wù)端與客戶端之間的交互。
為了便于理解,下面對(duì)圖3中的步驟進(jìn)一步地詳細(xì)說(shuō)明。
在本申請(qǐng)實(shí)施例中,在服務(wù)端上預(yù)設(shè)有消息處理單元時(shí),對(duì)于步驟S302,根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,確定更新指示信息,具體可以包括:所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息傳遞給所述服務(wù)端上預(yù)設(shè)的消息處理單元,以便于所述消息處理單元根據(jù)所述狀態(tài)信息,確定更新指示信息。
需要說(shuō)明的是,本申請(qǐng)實(shí)施例對(duì)“將所述狀態(tài)信息傳遞給所述服務(wù)端上預(yù)設(shè)的消息處理單元”所采用的傳遞方式并不做限定。在實(shí)際應(yīng)用場(chǎng)景下,服務(wù)接口獲得該狀態(tài)信息后,可以構(gòu)造一個(gè)包含該狀態(tài)信息的消息,并將該消息發(fā)送給消息處理單元。進(jìn)一步的,該消息可以以異步方式發(fā)送給消息處理單元,在這種情況下,所述消息處理單元具體可以是異步消息處理單元。
服務(wù)接口除了可以將狀態(tài)信息發(fā)送給消息處理單元以外,還可以將諸如客戶端的標(biāo)識(shí)等相關(guān)信息發(fā)送給消息處理單元,以便于消息處理單元可以將生成的更新指示信息正確地返回給客戶端。下面對(duì)更新指示信息的確定方法進(jìn)一步地說(shuō)明。
前面已經(jīng)提到,所述狀態(tài)信息可以包括:所述客戶端上的配置信息的最新更新時(shí)間,或者,所述客戶端上的配置信息的標(biāo)識(shí)。
則當(dāng)所述狀態(tài)信息包括所述客戶端上的配置信息的最新更新時(shí)間時(shí),可以按照如下方法,根據(jù)所述狀態(tài)信息,確定更新指示信息:當(dāng)確定所述服務(wù)端上 的配置信息的最新更新時(shí)間大于所述客戶端上的配置信息的最新更新時(shí)間時(shí),確定所述服務(wù)端在所述客戶端上的配置信息的最新更新時(shí)間之后,更新的所述配置信息的更新信息;根據(jù)所述更新信息生成更新指示信息,其中,所述更新指示信息中包含所述更新信息的標(biāo)識(shí)或所述更新信息;
類似的,當(dāng)所述狀態(tài)信息包括所述客戶端上的配置信息的標(biāo)識(shí)時(shí),可以按照如下方法,根據(jù)所述狀態(tài)信息,確定更新指示信息:當(dāng)確定所述服務(wù)端上存在對(duì)應(yīng)的標(biāo)識(shí)與所述客戶端上的配置信息的標(biāo)識(shí)不相同的配置信息時(shí),將確定出的配置信息作為所述客戶端上的配置信息的更新信息;根據(jù)所述更新信息生成更新指示信息,其中,所述更新指示信息中包含所述更新信息的標(biāo)識(shí)或所述更新信息。
在本申請(qǐng)實(shí)施例中,服務(wù)接口和/或消息處理單元可以通過(guò)長(zhǎng)連接推送(Push)消息通道,將更新指示信息返回給客戶端,其中,所述長(zhǎng)連接Push消息通道可以只由一個(gè)應(yīng)用使用,也可以由多個(gè)應(yīng)用公用。進(jìn)一步的,當(dāng)更新指示信息中包含更新信息的標(biāo)識(shí)、且未包含該更新信息時(shí),則客戶端尚未直接獲取到更新信息,客戶端可以在接收到更新指示信息后,再根據(jù)更新信息的標(biāo)識(shí),通過(guò)該長(zhǎng)連接Push消息通道,或者,其他的通道,從服務(wù)端獲取更新信息。
當(dāng)客戶端通過(guò)所述其他的通道獲取更新信息時(shí),可以降低長(zhǎng)連接Push消息通道的信息傳送負(fù)擔(dān),防止自己長(zhǎng)時(shí)間占用長(zhǎng)連接Push消息通道,而且,客戶端和服務(wù)端還可以針對(duì)所述其他的消息通道,實(shí)現(xiàn)指定的安全機(jī)制,以提高客戶端獲取更新信息的可靠性。
以上為分別從客戶端角度和服務(wù)端角度,對(duì)本申請(qǐng)實(shí)施例提供的信息處理方法的說(shuō)明。為了便于理解,本申請(qǐng)實(shí)施例還提供了在一種實(shí)際應(yīng)用場(chǎng)景下,實(shí)施所述信息處理方法時(shí),客戶端和服務(wù)端的交互示意圖,如圖4所示,所述交互具體可以包括以下步驟:
S401:客戶端接收服務(wù)獲取指令。
S402:客戶端根據(jù)所述服務(wù)獲取指令,生成針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求。
S403:客戶端將接口調(diào)用請(qǐng)求傳遞給客戶端上預(yù)設(shè)的代理單元。
S404:代理單元獲取客戶端上的配置信息的狀態(tài)信息。
S405:代理單元根據(jù)接口調(diào)用請(qǐng)求和狀態(tài)信息,生成包含該狀態(tài)信息的服務(wù)請(qǐng)求。
S406:代理單元通過(guò)服務(wù)接口,將服務(wù)請(qǐng)求發(fā)送給服務(wù)端。
S407:服務(wù)接口通過(guò)對(duì)應(yīng)的服務(wù)接口實(shí)現(xiàn)單元對(duì)服務(wù)請(qǐng)求進(jìn)行處理,以向客戶端返回對(duì)應(yīng)的服務(wù)。
S408:服務(wù)接口將服務(wù)請(qǐng)求包含的該狀態(tài)信息,通過(guò)異步消息發(fā)送給服務(wù)端上的異步消息處理單元。
S409:異步消息處理單元當(dāng)確定服務(wù)端更新時(shí)間大于該狀態(tài)信息中包含的客戶端更新時(shí)間時(shí),確定服務(wù)端在客戶端更新時(shí)間后更新的配置信息的更新信息的標(biāo)識(shí),作為更新指示信息。
S410:異步消息處理單元將更新指示信息通過(guò)長(zhǎng)連接Push通道返回給客戶端。
S411:客戶端根據(jù)更新指示信息中的更新信息的標(biāo)識(shí),從服務(wù)端獲取配置客戶端上的配置信息的更新信息。
進(jìn)一步的,本申請(qǐng)實(shí)施例還提供了在一種實(shí)際應(yīng)用場(chǎng)景下,適用于實(shí)施所述信息處理方法的系統(tǒng)結(jié)構(gòu)示意圖,如圖5所示。
在圖5中,客戶端和服務(wù)端上分別包含有若干個(gè)單元,需要說(shuō)明的是,圖5只是一種舉例說(shuō)明的系統(tǒng)結(jié)構(gòu)示意圖,在實(shí)際應(yīng)用中,圖5中的各單元也可以進(jìn)行合并和/或分拆,本申請(qǐng)實(shí)施例并不做限定。
在圖5中,公共請(qǐng)求代理單元和公共返回代理單元可以構(gòu)成本申請(qǐng)實(shí)施例中所述的代理單元,系統(tǒng)的工作過(guò)程如下:
服務(wù)接口調(diào)用單元在接收到服務(wù)獲取指令后,將對(duì)應(yīng)的接口函數(shù)和調(diào)用參 數(shù)傳遞給公共請(qǐng)求代理單元;
公共請(qǐng)求代理單元根據(jù)該接口函數(shù)、該調(diào)用參數(shù),以及客戶端上的配置信息的狀態(tài)信息,生成服務(wù)請(qǐng)求;
公共請(qǐng)求代理單元將服務(wù)請(qǐng)求通過(guò)對(duì)應(yīng)的服務(wù)接口,發(fā)送給服務(wù)端;服務(wù)接口通過(guò)服務(wù)接口實(shí)現(xiàn)單元,對(duì)服務(wù)請(qǐng)求進(jìn)行處理,并向客戶端返回對(duì)應(yīng)的服務(wù);
服務(wù)接口根據(jù)服務(wù)請(qǐng)求包含的狀態(tài)信息,生成包含有該狀態(tài)信息的消息,并以異步方式將該消息傳遞給異步消息處理單元;
異步消息處理單元根據(jù)接收到的該消息,當(dāng)確定服務(wù)端上存在配置信息的更新信息時(shí),將該更新消息的標(biāo)識(shí)作為更新指示信息,通過(guò)長(zhǎng)連接Push消息通道,發(fā)送給客戶端;
客戶端通過(guò)Push消息接收單元接收到更新指示信息,根據(jù)更新消息的標(biāo)識(shí),通過(guò)配置信息查詢接口調(diào)用單元與服務(wù)端的配置信息查詢接口實(shí)現(xiàn)單元,獲取到配置信息的更新信息;
配置信息查詢接口調(diào)用單元將配置信息的更新信息傳遞給公共返回代理單元,以便于客戶端更新配置信息。其中,公共返回代理單元可以用于記錄配置信息的狀態(tài)信息。
針對(duì)本申請(qǐng)實(shí)施例提供的信息處理方法,基于同樣的思路,本申請(qǐng)實(shí)施例還提供相應(yīng)的信息處理裝置,如圖6、圖7所示。
圖6為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)與圖1的信息處理裝置結(jié)構(gòu)示意圖,具體包括:
生成模塊601,用于根據(jù)客戶端上生成的、針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求;
發(fā)送模塊602,用于將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端。
通過(guò)上述裝置,客戶端可以利用已有的任一服務(wù)接口獲取配置信息的更新 信息,而不需要為了獲取該更新信息單獨(dú)維護(hù)一個(gè)定時(shí)線程,因此,可以減輕客戶端的負(fù)擔(dān)。
所述狀態(tài)信息包括:所述客戶端上的配置信息的最新更新時(shí)間,或者,所述客戶端上的配置信息的標(biāo)識(shí)。
所述狀態(tài)信息通過(guò)所述服務(wù)請(qǐng)求的預(yù)定字段進(jìn)行保存,包含在所述服務(wù)請(qǐng)求中。
所述接口調(diào)用請(qǐng)求包含所述至少一個(gè)服務(wù)接口的接口函數(shù),以及所述接口函數(shù)的調(diào)用參數(shù);
所述生成模塊601具體用于:確定所述接口調(diào)用請(qǐng)求對(duì)應(yīng)的代理實(shí)現(xiàn)類,其中,所述代理實(shí)現(xiàn)類是根據(jù)所述接口函數(shù)和所述預(yù)定字段生成的;根據(jù)所述代理實(shí)現(xiàn)類、所述接口函數(shù)的調(diào)用參數(shù)和所述狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求。
所述生成模塊601具體用于:根據(jù)所述代理實(shí)現(xiàn)類,對(duì)所述接口函數(shù)的調(diào)用參數(shù)進(jìn)行轉(zhuǎn)換,生成服務(wù)參數(shù);獲取所述狀態(tài)信息,并通過(guò)所述預(yù)定字段保存所述狀態(tài)信息;根據(jù)所述代理實(shí)現(xiàn)類、所述服務(wù)參數(shù)和保存了所述狀態(tài)信息的所述預(yù)定字段,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求。
所述裝置還可以包括:
獲取模塊603,用于在所述發(fā)送模塊601將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端之后,接收所述服務(wù)端根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,返回的更新指示信息;根據(jù)所述更新指示信息,獲取所述配置信息的更新信息。
所述更新指示信息包括:所述配置信息的更新信息的標(biāo)識(shí),或者,所述配置信息的更新信息;
當(dāng)所述更新指示信息包括所述配置信息的更新信息的標(biāo)識(shí)時(shí),所述發(fā)送模塊具體用于:根據(jù)所述配置信息的更新信息的標(biāo)識(shí),從所述服務(wù)端獲取所述配置信息的更新信息;
當(dāng)所述更新指示信息包括所述配置信息的更新信息時(shí),所述發(fā)送模塊具體 用于:從所述更新指示信息中,獲取所述配置信息的更新信息。
具體的上述如圖6所示的裝置可以位于客戶端上。
圖7為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖3的信息處理裝置結(jié)構(gòu)示意圖,具體包括:
接收模塊701,用于接收客戶端發(fā)送的服務(wù)請(qǐng)求,其中,所述服務(wù)請(qǐng)求包括所述客戶端針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息;
返回模塊702,用于根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,確定并向所述客戶端返回更新指示信息,所述更新指示信息用于指示所述配置信息的更新信息。
通過(guò)上述裝置,客戶端可以利用已有的任一服務(wù)接口獲取配置信息的更新信息,而不需要為了獲取該更新信息單獨(dú)維護(hù)一個(gè)定時(shí)線程,因此,可以減輕客戶端的負(fù)擔(dān)。
所述返回模塊702具體用于:將所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息傳遞給所述服務(wù)端上預(yù)設(shè)的消息處理單元,以便于所述消息處理單元根據(jù)所述狀態(tài)信息,確定更新指示信息。
所述狀態(tài)信息包括:所述客戶端上的配置信息的最新更新時(shí)間,或者,所述客戶端上的配置信息的標(biāo)識(shí);
當(dāng)所述狀態(tài)信息包括所述客戶端上的配置信息的最新更新時(shí)間時(shí),所述返回模塊702按照如下方法,根據(jù)所述狀態(tài)信息,確定更新指示信息:
當(dāng)確定所述服務(wù)端上的配置信息的最新更新時(shí)間大于所述客戶端上的配置信息的最新更新時(shí)間時(shí),確定所述服務(wù)端在所述客戶端上的配置信息的最新更新時(shí)間之后,更新的所述配置信息的更新信息;根據(jù)所述更新信息生成更新指示信息,其中,所述更新指示信息中包含所述更新信息的標(biāo)識(shí)或所述更新信息;
當(dāng)所述狀態(tài)信息包括所述客戶端上的配置信息的標(biāo)識(shí)時(shí),所述返回模塊 702按照如下方法,根據(jù)所述狀態(tài)信息,確定更新指示信息:
當(dāng)確定所述服務(wù)端上存在對(duì)應(yīng)的標(biāo)識(shí)與所述客戶端上的配置信息的標(biāo)識(shí)不相同的配置信息時(shí),將確定出的配置信息作為所述客戶端上的配置信息的更新信息;根據(jù)所述更新信息生成更新指示信息,其中,所述更新指示信息中包含所述更新信息的標(biāo)識(shí)或所述更新信息。
具體的上述如圖7所示的裝置可以位于服務(wù)端上。
基于同樣的思路,本申請(qǐng)實(shí)施例還提供相應(yīng)的終端,如圖8、圖9所示。
圖8為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖1的終端示意圖,具體包括:
存儲(chǔ)器801,用于存儲(chǔ)處理器可執(zhí)行指令;
處理器802,耦合到所述存儲(chǔ)器,用于讀取所述存儲(chǔ)器存儲(chǔ)的可執(zhí)行指令,作為響應(yīng),執(zhí)行如下操作:根據(jù)客戶端上生成的、針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息,生成包含所述狀態(tài)信息的服務(wù)請(qǐng)求;將所述服務(wù)請(qǐng)求發(fā)送給所述服務(wù)端。
圖9為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖3的終端示意圖,具體包括:
存儲(chǔ)器901,用于存儲(chǔ)處理器可執(zhí)行指令;
處理器902,耦合到所述存儲(chǔ)器,用于讀取所述存儲(chǔ)器存儲(chǔ)的可執(zhí)行指令,作為響應(yīng),執(zhí)行如下操作:接收客戶端發(fā)送的服務(wù)請(qǐng)求,其中,所述服務(wù)請(qǐng)求包括所述客戶端針對(duì)服務(wù)端提供的至少一個(gè)服務(wù)接口的接口調(diào)用請(qǐng)求,以及所述客戶端上的配置信息的狀態(tài)信息;根據(jù)所述服務(wù)請(qǐng)求中包含的所述狀態(tài)信息,確定并向所述客戶端返回更新指示信息,所述更新指示信息用于指示所述配置信息的更新信息。
需要說(shuō)明的是,在實(shí)際應(yīng)用中,圖9中的終端可以作為服務(wù)器使用。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、 CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀 存儲(chǔ)器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問(wèn)的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
還需要說(shuō)明的是,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、商品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、商品或者設(shè)備中還存在另外的相同要素。
以上所述僅為本申請(qǐng)的實(shí)施例而已,并不用于限制本申請(qǐng)。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),本申請(qǐng)可以有各種更改和變化。凡在本申請(qǐng)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的權(quán)利要求范圍之內(nèi)。