本發(fā)明涉及數(shù)據(jù)傳輸領(lǐng)域,具體而言,涉及一種數(shù)據(jù)傳輸方法和裝置。
背景技術(shù):
現(xiàn)有技術(shù)在進(jìn)行數(shù)據(jù)傳輸時,通常采用服務(wù)器主動向第一網(wǎng)頁推送數(shù)據(jù)的方式,第一網(wǎng)頁只負(fù)責(zé)接收服務(wù)器推送的數(shù)據(jù)。服務(wù)器推送的數(shù)據(jù)是服務(wù)器基于多個第一網(wǎng)頁收集的多個用戶的數(shù)據(jù)得到的,然而,每個用戶所需要獲得的推送數(shù)據(jù)不同,現(xiàn)有的服務(wù)器無法精準(zhǔn)的向用戶推送數(shù)據(jù)。
針對上述的問題,目前尚未提出有效的解決方案。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)傳輸方法和裝置,以至少解決無法精準(zhǔn)的推送數(shù)據(jù)的技術(shù)問題。
根據(jù)本發(fā)明實(shí)施例的一個方面,提供了一種數(shù)據(jù)傳輸方法,包括:在打開目標(biāo)網(wǎng)頁時第一網(wǎng)頁調(diào)用js邏輯創(chuàng)建采用全雙工通訊的長連接,其中,所述目標(biāo)網(wǎng)頁嵌套在所述第一網(wǎng)頁的iframe標(biāo)簽中;所述第一網(wǎng)頁通過所述長連接向服務(wù)器傳輸?shù)谝粩?shù)據(jù),所述第一數(shù)據(jù)由所述目標(biāo)網(wǎng)頁捕捉得到;所述第一網(wǎng)頁接收所述服務(wù)器通過所述長連接推送的第二數(shù)據(jù),所述第二數(shù)據(jù)根據(jù)所述第一網(wǎng)頁上報的所述第一數(shù)據(jù)生成,其中,在所述第一網(wǎng)頁接收所述第二數(shù)據(jù)之前,所述第一網(wǎng)頁不向所述服務(wù)器發(fā)送用于請求所述第二數(shù)據(jù)的數(shù)據(jù)請求;所述第一網(wǎng)頁向所述目標(biāo)網(wǎng)頁發(fā)送所述第二數(shù)據(jù)。
根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種數(shù)據(jù)傳輸裝置,包括:創(chuàng)建單元,用于在打開目標(biāo)網(wǎng)頁時調(diào)用js邏輯創(chuàng)建采用全雙工通訊的長連接,其中,所述目標(biāo)網(wǎng)頁嵌套在第一網(wǎng)頁的iframe標(biāo)簽中;第一傳輸單元,用于通過所述長連接向服務(wù)器傳輸?shù)谝粩?shù)據(jù),所述第一數(shù)據(jù)由所述目標(biāo)網(wǎng)頁捕捉得到;第二傳輸單元,用于接收所述服務(wù)器通過所述長連接推送的第二數(shù)據(jù),所述第二數(shù)據(jù)根據(jù)所述第一網(wǎng)頁上報的所述第一數(shù)據(jù)生成,其中,在所述第一網(wǎng)頁接收所述第二數(shù)據(jù)之前,所述第一網(wǎng)頁不向所述服務(wù)器發(fā)送用于請求所述第二數(shù)據(jù)的數(shù)據(jù)請求;發(fā)送單元,用于向所述目標(biāo)網(wǎng)頁發(fā)送所述第二數(shù)據(jù)。
在本發(fā)明實(shí)施例中,第二數(shù)據(jù)是根據(jù)第一數(shù)據(jù)生成的,因此,向第一網(wǎng)頁推送的第二數(shù)據(jù)是與第一網(wǎng)頁收集的第一數(shù)據(jù)相匹配的,在第一數(shù)據(jù)體現(xiàn)用戶的行為習(xí)慣或者興趣偏好時,推送的第二數(shù)據(jù)可以精準(zhǔn)匹配用戶所需的數(shù)據(jù),解決了現(xiàn)有技術(shù)無法精準(zhǔn)推送數(shù)據(jù)的技術(shù)問題。進(jìn)一步地,因?yàn)榈谝痪W(wǎng)頁和服務(wù)器之間通過全雙工通訊的長連接進(jìn)行通信,服務(wù)器可以實(shí)時獲取目標(biāo)網(wǎng)頁捕捉到的第一數(shù)據(jù),也就能夠?qū)崟r根據(jù)第一數(shù)據(jù)生成第二數(shù)據(jù),并實(shí)時將生成的第二數(shù)據(jù)推送給第一網(wǎng)頁。在服務(wù)器推送第二數(shù)據(jù)的過程中,并不需要第一網(wǎng)頁和目標(biāo)網(wǎng)頁向服務(wù)器發(fā)起數(shù)據(jù)請求,也就實(shí)現(xiàn)了服務(wù)器實(shí)時向第一網(wǎng)頁推送第二數(shù)據(jù),達(dá)到了實(shí)時、精準(zhǔn)推送數(shù)據(jù)的效果。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
圖1是根據(jù)本發(fā)明實(shí)施例的硬件結(jié)構(gòu)的示意圖;
圖2是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)傳輸方法的流程圖;
圖3是根據(jù)本發(fā)明實(shí)施例的建立連接的時序圖;
圖4是根據(jù)本發(fā)明實(shí)施例的flash實(shí)現(xiàn)websocket開啟長連接的時序圖;
圖5是根據(jù)本發(fā)明實(shí)施例的對采用flash實(shí)現(xiàn)全雙工通訊的長連接進(jìn)行發(fā)送、接收和關(guān)閉的時序圖;
圖6是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)傳輸裝置的示意圖;
圖7是根據(jù)本發(fā)明實(shí)施例終端的示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤4送?,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
名詞解釋:
連接:計算機(jī)網(wǎng)絡(luò)中通訊雙方建立的虛擬通訊線路。
協(xié)議:計算機(jī)網(wǎng)絡(luò)中通訊雙方在交互方式和數(shù)據(jù)格式上的一種約定。
全雙工:計算機(jī)網(wǎng)絡(luò)中通訊雙方可以同時進(jìn)行雙向數(shù)據(jù)傳輸?shù)囊环N傳輸模式。
實(shí)時推送:一種由服務(wù)器主動向第一網(wǎng)頁發(fā)送數(shù)據(jù)的傳輸模式,不同于傳統(tǒng)的第一網(wǎng)頁請求服務(wù)器響應(yīng)的模式,不需要第一網(wǎng)頁的請求。
Http:超文本傳輸協(xié)議,一種廣泛應(yīng)用的通訊協(xié)議。
Websocket:一種在單個連接上進(jìn)行全雙工通訊的協(xié)議,相對于Http能更好地節(jié)省服務(wù)器資源和帶寬并達(dá)到實(shí)時推送。
長連接:相對于Http通常使用的短連接形式,指第一網(wǎng)頁和服務(wù)器長時間保持一條虛擬通訊線路。
js代碼:javascript腳本語言,提供了數(shù)據(jù)驗(yàn)證的基本功能。Javascript使網(wǎng)頁增加互動性。
iframe即HTML標(biāo)簽,作用是文檔中的文檔,或者浮動的框架。iframe元素會創(chuàng)建包含另外一個文檔的內(nèi)聯(lián)框架,即行內(nèi)框架。
HTML:即超文本標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言下的一個應(yīng)用。
實(shí)施例1
根據(jù)本發(fā)明實(shí)施例,提供了一種可以通過本申請裝置實(shí)施例執(zhí)行的方法實(shí)施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機(jī)可執(zhí)行指令的計算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
可選地,在本實(shí)施例中,上述數(shù)據(jù)傳輸方法可以應(yīng)用于如圖1所示的終端102和服務(wù)器104所構(gòu)成的硬件環(huán)境中。如圖1所示,客終端102通過網(wǎng)絡(luò)與服務(wù)器104進(jìn)行連接,上述網(wǎng)絡(luò)包括但不限于:移動通信網(wǎng)絡(luò)、廣域網(wǎng)、城域網(wǎng)或局域網(wǎng),終端102可以是手機(jī)終端,也可以是PC終端、筆記本終端或平板電腦終端。
終端102上的第一網(wǎng)頁與服務(wù)器104建立全雙工通信的長連接,在目標(biāo)網(wǎng)頁嵌套在第一網(wǎng)頁中,目標(biāo)網(wǎng)頁進(jìn)行網(wǎng)頁跳轉(zhuǎn)頁會在第一網(wǎng)頁內(nèi)進(jìn)行跳轉(zhuǎn),目標(biāo)網(wǎng)頁的跳轉(zhuǎn)并不會影響第一網(wǎng)頁與服務(wù)器的連接,實(shí)現(xiàn)了目標(biāo)網(wǎng)頁與服務(wù)器的長連接。第一網(wǎng)頁通過長連接將目標(biāo)網(wǎng)頁捕捉的第一發(fā)送給服務(wù)器104,第一網(wǎng)頁通過長連接接收服務(wù)器104發(fā)送的第二數(shù)據(jù),并將第二數(shù)據(jù)發(fā)送給目標(biāo)網(wǎng)頁,由于第二數(shù)據(jù)是根據(jù)第一數(shù)據(jù)生成的,因此,第二數(shù)據(jù)能夠準(zhǔn)確匹配用戶的興趣和喜好,從而實(shí)現(xiàn)了精準(zhǔn)推送數(shù)據(jù),解決了現(xiàn)有技術(shù)無法精準(zhǔn)推送數(shù)據(jù)的技術(shù)問題。
本實(shí)施例提供了一種數(shù)據(jù)傳輸方法,該數(shù)據(jù)傳輸方法可以應(yīng)用在圖1所示的硬件環(huán)境中。
圖2是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)傳輸方法的流程圖。如圖2所示,該數(shù)據(jù)傳輸方法包括如下步驟:
步驟S202,第一網(wǎng)頁調(diào)用js邏輯創(chuàng)建采用全雙工通訊的長連接。
步驟S204,第一網(wǎng)頁通過長連接向服務(wù)器傳輸?shù)谝粩?shù)據(jù),第一數(shù)據(jù)由第一網(wǎng)頁捕捉得到,目標(biāo)網(wǎng)頁嵌套在第一網(wǎng)頁的iframe標(biāo)簽中。
步驟S206,第一網(wǎng)頁接收服務(wù)器通過長連接推送的第二數(shù)據(jù),第二數(shù)據(jù)根據(jù)第一網(wǎng)頁上報的第一數(shù)據(jù)生成,其中,在第一網(wǎng)頁接收第二數(shù)據(jù)之前,第一網(wǎng)頁不向服務(wù)器發(fā)送用于請求第二數(shù)據(jù)的數(shù)據(jù)請求。
步驟S208,第一網(wǎng)頁向目標(biāo)網(wǎng)頁發(fā)送第二數(shù)據(jù)。
第一網(wǎng)頁創(chuàng)建全雙工通訊的長連接,全雙工通訊可以實(shí)現(xiàn)通過同一條長連接同時向服務(wù)器上報數(shù)據(jù)和接收來自服務(wù)器的數(shù)據(jù),并且長連接不需要第一網(wǎng)頁向服務(wù)器請求數(shù)據(jù),服務(wù)器可以在建立長連接后,主動向第一網(wǎng)頁推送數(shù)據(jù)。
在本實(shí)施例中,第二數(shù)據(jù)是根據(jù)第一數(shù)據(jù)生成的,因此,向第一網(wǎng)頁推送的第二數(shù)據(jù)是與第一網(wǎng)頁收集的第一數(shù)據(jù)相匹配的,在第一數(shù)據(jù)體現(xiàn)用戶的行為習(xí)慣或者興趣偏好時,推送的第二數(shù)據(jù)可以精準(zhǔn)匹配用戶所需的數(shù)據(jù),解決了現(xiàn)有技術(shù)無法精準(zhǔn)推送數(shù)據(jù)的技術(shù)問題。進(jìn)一步地,因?yàn)榈谝痪W(wǎng)頁和服務(wù)器之間通過全雙工通訊的長連接進(jìn)行通信,服務(wù)器可以實(shí)時獲取目標(biāo)網(wǎng)頁捕捉到的第一數(shù)據(jù),也就能夠?qū)崟r根據(jù)第一數(shù)據(jù)生成第二數(shù)據(jù),并實(shí)時將生成的第二數(shù)據(jù)推送給第一網(wǎng)頁。在服務(wù)器推送第二數(shù)據(jù)的過程中,并不需要第一網(wǎng)頁和目標(biāo)網(wǎng)頁向服務(wù)器發(fā)起數(shù)據(jù)請求,也就實(shí)現(xiàn)了服務(wù)器實(shí)時向第一網(wǎng)頁推送第二數(shù)據(jù),達(dá)到了實(shí)時、精準(zhǔn)推送數(shù)據(jù)的效果。
在一些實(shí)施例中,用戶A瀏覽目標(biāo)網(wǎng)頁時,對目標(biāo)網(wǎng)頁中的“汽車”相關(guān)的信息進(jìn)行了點(diǎn)擊、在關(guān)于汽車的廣告部分停留了較長的時間,目標(biāo)網(wǎng)頁捕捉用戶A的點(diǎn)擊行為和瀏覽的停留時間(第一數(shù)據(jù)),并通過第一網(wǎng)頁發(fā)送給服務(wù)器。服務(wù)器根據(jù)點(diǎn)擊行為和瀏覽的停留時間確定出用戶A對汽車比較感興趣,生成汽車相關(guān)的廣告信息、用戶關(guān)注的汽車品牌的折扣信息等,服務(wù)器生成的這些信息作為第二數(shù)據(jù)發(fā)送給第一網(wǎng)頁,第一網(wǎng)頁轉(zhuǎn)發(fā)廣告信息和折扣信息給目標(biāo)網(wǎng)頁。
在另外一些實(shí)施例中,用戶B瀏覽目標(biāo)網(wǎng)頁時,對目標(biāo)網(wǎng)頁中的對目標(biāo)網(wǎng)頁中的“美食”相關(guān)的信息進(jìn)行了點(diǎn)擊、在關(guān)于美食的廣告部分停留了較長的時間,目標(biāo)網(wǎng)頁捕捉用戶B的點(diǎn)擊行為和瀏覽的停留時間(第一數(shù)據(jù)),并通過第一網(wǎng)頁發(fā)送給服務(wù)器。服務(wù)器根據(jù)點(diǎn)擊行為和瀏覽的停留時間確定出用戶B對美食比較感興趣,生成美食相關(guān)的廣告信息、用戶關(guān)注的美食品牌的折扣信息等,服務(wù)器生成的這些信息作為第二數(shù)據(jù)發(fā)送給第一網(wǎng)頁,第一網(wǎng)頁轉(zhuǎn)發(fā)廣告信息和折扣信息給目標(biāo)網(wǎng)頁。
由于本實(shí)施例的第二數(shù)據(jù)的推送是根據(jù)第一數(shù)據(jù)生成的,第一數(shù)據(jù)能夠體現(xiàn)用戶的興趣和愛好,因此,服務(wù)器可以實(shí)時并且精準(zhǔn)的推送用戶需要的信息。
對于廣告投放來說,可以實(shí)時且精準(zhǔn)的向用戶推送廣告,推送廣告的時刻是用戶具有消費(fèi)傾向的時候,因此,及時推送的廣告能夠在用戶的消費(fèi)沖動消失前促進(jìn)用戶的消費(fèi)。
在本實(shí)施例中,為了實(shí)現(xiàn)實(shí)時向第一網(wǎng)頁推送消息,第一網(wǎng)頁與服務(wù)器建立長連接。在介紹本實(shí)施例的長連接之前,先介紹現(xiàn)有的長連接?,F(xiàn)有的長連接主要是通過第一網(wǎng)頁每隔一段時間發(fā)送一個心跳包至服務(wù)器刷新心跳時間。在網(wǎng)頁上保持長連接與app應(yīng)用的長連接不一樣的地方在于,app應(yīng)用從一個頁面跳轉(zhuǎn)到另外一個頁面時,不需要斷開網(wǎng)頁再重連,而網(wǎng)頁端從一個頁面跳轉(zhuǎn)到另外一個頁面時需要經(jīng)過一次連接斷開再重連的過程,這就導(dǎo)致在頁面跳轉(zhuǎn)時長連接不能持續(xù)。
為了解決網(wǎng)頁端的長連接不能持續(xù)的問題,本實(shí)施例在創(chuàng)建長連接時,將目標(biāo)網(wǎng)頁嵌套在第一頁面的iframe標(biāo)簽中,建立第一頁面與服務(wù)器的長連接,嵌套在iframe標(biāo)簽中的目標(biāo)網(wǎng)頁在iframe標(biāo)簽中執(zhí)行跳轉(zhuǎn),iframe標(biāo)簽外部的第一網(wǎng)頁與服務(wù)器保持的長連接并不會因?yàn)閕frame標(biāo)簽內(nèi)部目標(biāo)網(wǎng)頁的跳轉(zhuǎn)而斷開,從而保證了第一網(wǎng)頁與服務(wù)器之間長連接的穩(wěn)定性。
在本實(shí)施例中設(shè)置的iframe標(biāo)簽保證了長連接的持續(xù)性和穩(wěn)定性,同時長連接是全雙工通信,可以在第一網(wǎng)頁和服務(wù)器之間實(shí)現(xiàn)長時間實(shí)時數(shù)據(jù)傳輸,也就是說,服務(wù)器可以實(shí)時根據(jù)第一網(wǎng)頁捕捉的第一數(shù)據(jù)向第一網(wǎng)頁端推送第二數(shù)據(jù)。另外,由于第一網(wǎng)頁的捕捉是無侵入的方式,用戶的操作不會被捕捉打擾,不會降低用戶體驗(yàn)。
以下結(jié)合圖3對本實(shí)施例進(jìn)行說明。
301、用戶通過網(wǎng)頁運(yùn)行游戲第一網(wǎng)頁,訪問游戲官網(wǎng)網(wǎng)頁。
302、在網(wǎng)頁打開時網(wǎng)頁js與官網(wǎng)服務(wù)器建立采用全雙工通信的長連接。
303、網(wǎng)頁js發(fā)送用戶相關(guān)信息。在一些例子中,網(wǎng)頁收集當(dāng)前用戶的賬號信息、用戶當(dāng)前瀏覽器的頁面地址和用戶在當(dāng)前頁面上的有效停留時間等。
304、官網(wǎng)服務(wù)器向推薦服務(wù)器發(fā)送用戶實(shí)時畫像,實(shí)時畫像用來體現(xiàn)不同類的人群。在一些具體的例子中,通過實(shí)時畫像來表示當(dāng)前用戶是對當(dāng)前頁面感興趣的人群或者對當(dāng)前頁面不感興趣的人群。
305、用戶在頁面執(zhí)行操作。
306、網(wǎng)頁js捕捉用戶在網(wǎng)頁上執(zhí)行的操作,并將用戶操作發(fā)送給官網(wǎng)服務(wù)器。
307、官方服務(wù)器更新用戶的畫像信息,并將更新后的信息發(fā)送給推薦服務(wù)器。
308、推薦服務(wù)器進(jìn)行推薦分析處理。在一些實(shí)施例中,推薦服務(wù)器判斷用戶在當(dāng)前頁面上的有效停留時間是否大于預(yù)設(shè)有效停留時間,如果大于,則確定用戶對當(dāng)前頁面感興趣。分析當(dāng)前頁面展示的內(nèi)容是某個游戲角色的皮膚或者裝備信息,則確定該用戶對該虛擬物品具有消費(fèi)傾向,則在確定用戶的消費(fèi)傾向時確定需要向第一網(wǎng)頁推送折扣信息。
309、推薦服務(wù)器向官網(wǎng)服務(wù)器推送折扣信息。
310、官網(wǎng)服務(wù)器向網(wǎng)頁js實(shí)時推送折扣信息。
311、在第一網(wǎng)頁向玩家展示折扣信息。在該實(shí)施例中,服務(wù)器實(shí)時向第一網(wǎng)頁推送,在確定出用戶具有消費(fèi)傾向時實(shí)時向用戶推送商品的折扣信息,提高用戶的消費(fèi)意愿。同時,由于推送的折扣信息更符合用戶的消費(fèi)心理,用戶看到的折扣信息是與想要獲得商品相關(guān)的信息,提高了用戶體驗(yàn)。并且,在數(shù)據(jù)收集和服務(wù)器推送的過程中,不需要第一網(wǎng)頁發(fā)送請求和接收響應(yīng),采用無侵入的方式不影響用戶在第一網(wǎng)頁的瀏覽體驗(yàn)。
在一些實(shí)施例中,上述游戲第一網(wǎng)頁可以是即時通訊網(wǎng)頁,如微信等。在用戶瀏覽微信的朋友圈時,根據(jù)用戶在朋友圈的某類信息的關(guān)注時間和點(diǎn)擊量等實(shí)時為用戶推送相關(guān)類別的新聞、商品信息等。
在一些實(shí)施例中,上述游戲第一網(wǎng)頁還可以是視頻網(wǎng)頁。根據(jù)用戶對某部影片的觀看情況實(shí)時為用戶推送相關(guān)影片的信息,或者實(shí)時為用戶推送視頻網(wǎng)頁的會員優(yōu)惠信息等。
可選地,本實(shí)施例中采用全雙工通信的長連接可以是websocket的長連接,該websocket是一種通信協(xié)議,在借助http進(jìn)行服務(wù)器和第一網(wǎng)頁之間的握手后進(jìn)行全雙工通信。對于不支持websocket的第一網(wǎng)頁,可以采用支持底層網(wǎng)絡(luò)功能的flash實(shí)現(xiàn)websocket的協(xié)議,通過調(diào)用flash websocket提供的接口與服務(wù)器進(jìn)行長連接通訊。即在打開目標(biāo)網(wǎng)頁時第一網(wǎng)頁創(chuàng)建websocket的長連接或者調(diào)用flash web socket提供的接口執(zhí)行長連接。
即第一網(wǎng)頁創(chuàng)建長連接包括:第一網(wǎng)頁加載flash文件,其中,flash文件包括通過接口執(zhí)行全雙工通訊的執(zhí)行邏輯;在flash文件聲明接口后第一網(wǎng)頁按照執(zhí)行邏輯調(diào)用接口;第一網(wǎng)頁調(diào)用接口向服務(wù)器發(fā)送連接請求;第一網(wǎng)頁通過接口接收響應(yīng)連接請求的連接響應(yīng),其中,在第一網(wǎng)頁接收到連接響應(yīng)后,確定第一網(wǎng)頁完成創(chuàng)建全雙工通訊的連接。
flash文件包括通過接口執(zhí)行全雙工通訊的執(zhí)行邏輯,flash文件聲明接口,使得第一網(wǎng)頁可以調(diào)用接口與服務(wù)器的接口進(jìn)行連接,實(shí)現(xiàn)全雙工通訊。
以下結(jié)合圖4對flash實(shí)現(xiàn)websocket開啟長連接的時序進(jìn)行說明。
401、網(wǎng)頁加載swfobejct.js,以執(zhí)行js邏輯。
402、js邏輯調(diào)用并加載flash文件,運(yùn)行websocket facade。
403、websocket facade注冊js調(diào)用的接口,即聲明接口,為網(wǎng)頁提供接口以便與服務(wù)器建立連接。
404、websocket facade通知js邏輯已完成初始化,即完成聲明接口。
405、網(wǎng)頁加載web_socket.js邏輯,注冊js調(diào)用的接口。
406、頁面創(chuàng)建js節(jié)點(diǎn),即網(wǎng)頁調(diào)用flash在403聲明的接口。
407、創(chuàng)建websocket實(shí)例,即創(chuàng)建外部接口邏輯。
408、創(chuàng)建raw websocket實(shí)例,即創(chuàng)建內(nèi)部API接口。
409、注冊網(wǎng)絡(luò)事件監(jiān)聽,以捕捉服務(wù)器發(fā)送的連接成功響應(yīng)。
411、套接字連接。
412、底層觸發(fā)連接成功事件。捕捉服務(wù)器返回的連接成功事件。
413、websocket facade將捕捉到的連接成功事件轉(zhuǎn)發(fā)給js邏輯,完成全雙工連接的實(shí)現(xiàn)。
需要說明的是,圖4的示例頁面可以是上述與服務(wù)器直接建立長連接的第一頁面。在建立長連接的基礎(chǔ)上又可以實(shí)現(xiàn)全雙工通信,因此,第一網(wǎng)頁調(diào)用flash文件聲明的接口主動向服務(wù)器傳輸?shù)谝粩?shù)據(jù)。第一網(wǎng)頁可以實(shí)時向服務(wù)器主動傳輸?shù)谝粩?shù)據(jù)。
可選地,第一網(wǎng)頁調(diào)用flash文件聲明的接口接收服務(wù)器通過長連接推送的第二數(shù)據(jù)。第一網(wǎng)頁在不向服務(wù)器請求第二數(shù)據(jù)的情況下,也可以直接接收服務(wù)器主動發(fā)送的第二數(shù)據(jù)。
可選地,在創(chuàng)建采用全雙工通訊的長連接之后,第一網(wǎng)頁先調(diào)用flashws關(guān)閉長連接,再調(diào)用raw ws關(guān)閉長連接。
以下結(jié)合圖5對采用flash實(shí)現(xiàn)全雙工通訊的長連接進(jìn)行發(fā)送、接收和關(guān)閉進(jìn)行說明。
501、在頁面上捕捉用戶在頁面上的操作行為(第一數(shù)據(jù)),并提交給頁面的js邏輯。在一些實(shí)施例中,用戶的操作行為包括點(diǎn)擊、瀏覽和停留操作等。具體地,用戶點(diǎn)擊頁面上的圖片、視頻或者選中文字等;用戶在瀏覽頁面時在頁面上展示的某段文字、圖片或者視頻時停留一段時間等。
502、頁面的js邏輯調(diào)用flash ws接口向websocket facade發(fā)送捕捉到的操作行為。
503、websocket facade調(diào)用raw ws發(fā)送操作行為給websocket實(shí)現(xiàn)。
504、websocket實(shí)現(xiàn)調(diào)用網(wǎng)絡(luò)接口(圖4的403中flash已經(jīng)聲明的接口)向服務(wù)器的接口發(fā)送操作的行為數(shù)據(jù)。在一些實(shí)施例中,調(diào)用已經(jīng)聲明的接口發(fā)送用戶的點(diǎn)擊和瀏覽數(shù)據(jù)等等。在一些實(shí)施例中,第二數(shù)據(jù)可以是商品的折扣優(yōu)惠信息、用戶興趣相關(guān)的新聞和廣告等。
505、websocket捕捉服務(wù)器返回的第二數(shù)據(jù),通過已經(jīng)聲明的接口接收服務(wù)器返回的第二數(shù)據(jù)。websocket實(shí)現(xiàn)通過websocket facade將第二數(shù)據(jù)發(fā)送給頁面的js邏輯,并展示在頁面上。
上述過程是第一網(wǎng)頁通過flash聲明的接口主動發(fā)送第一數(shù)據(jù),并且通過flash聲明的接口接收服務(wù)器發(fā)送的第二數(shù)據(jù)。以下對結(jié)束創(chuàng)建的flash實(shí)現(xiàn)的全雙工長連接進(jìn)行說明。
506、頁面向頁面的js邏輯發(fā)送關(guān)閉的指令。
507、js邏輯調(diào)用flash ws關(guān)閉連接。
508、websocket facade調(diào)用raw ws關(guān)閉連接。
509、websocket實(shí)現(xiàn)關(guān)閉連接執(zhí)行關(guān)閉事件,并將連接關(guān)閉的信息通過websocket facade發(fā)送給js邏輯,完成連接的關(guān)閉。
在上述過程中,對于支持websocket的第一網(wǎng)頁可以執(zhí)行基于websocket的全雙工通訊的長連接,對于不支持websocket的第一網(wǎng)頁執(zhí)行基于flash的全雙工通訊的長連接。
上述全雙工通訊在連接時完成第一網(wǎng)頁和服務(wù)器之間的握手后就可以進(jìn)行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸?shù)倪^程無需第一網(wǎng)頁或者服務(wù)器進(jìn)行請求。也就是說,服務(wù)器在未接收到第一網(wǎng)頁的請求的情況下可以通過長連接傳輸數(shù)據(jù);第一網(wǎng)頁在未接收到服務(wù)器的請求的情況下也可以通過長連接傳輸數(shù)據(jù),第一網(wǎng)頁可以通過全雙工通訊的長連接同時發(fā)送和接收數(shù)據(jù),實(shí)現(xiàn)了實(shí)時在第一網(wǎng)頁和服務(wù)器之間進(jìn)行數(shù)據(jù)傳輸。
由于本實(shí)施例提供了通過websocket和flash實(shí)現(xiàn)全雙工通訊,可以針對不同的第一網(wǎng)頁采用不同的實(shí)現(xiàn)方法,增強(qiáng)了本實(shí)施例的全雙工通訊的兼容性。
需要說明的是,對于前述的各方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因?yàn)橐罁?jù)本發(fā)明,某些步驟可以采用其他順序或者同時進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到根據(jù)上述實(shí)施例的方法可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機(jī),計算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實(shí)施例所述的方法。
實(shí)施例2
根據(jù)本發(fā)明實(shí)施例,還提供了一種用于實(shí)施上述數(shù)據(jù)傳輸方法的數(shù)據(jù)傳輸裝置,該數(shù)據(jù)傳輸裝置主要用于執(zhí)行本發(fā)明實(shí)施例上述內(nèi)容所提供的數(shù)據(jù)傳輸方法,以下對本發(fā)明實(shí)施例所提供的數(shù)據(jù)傳輸裝置做具體介紹:
圖6是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)傳輸裝置的示意圖,如圖6所示,該數(shù)據(jù)傳輸裝置主要包括:
創(chuàng)建單元60用于在打開目標(biāo)網(wǎng)頁時調(diào)用js邏輯創(chuàng)建采用全雙工通訊的長連接,其中,目標(biāo)網(wǎng)頁嵌套在第一網(wǎng)頁的iframe標(biāo)簽中。
第一傳輸單元62用于通過長連接向服務(wù)器傳輸?shù)谝粩?shù)據(jù),第一數(shù)據(jù)由目標(biāo)網(wǎng)頁捕捉得到。
第二傳輸單元64用于接收服務(wù)器通過長連接推送的第二數(shù)據(jù),第二數(shù)據(jù)根據(jù)第一網(wǎng)頁上報的第一數(shù)據(jù)生成,其中,在第一網(wǎng)頁接收第二數(shù)據(jù)之前,第一網(wǎng)頁不向服務(wù)器發(fā)送用于請求第二數(shù)據(jù)的數(shù)據(jù)請求。
發(fā)送單元66用于向目標(biāo)網(wǎng)頁發(fā)送第二數(shù)據(jù)。
第一網(wǎng)頁創(chuàng)建全雙工通訊的長連接,全雙工通訊可以實(shí)現(xiàn)通過同一條長連接同時向服務(wù)器上報數(shù)據(jù)和接收來自服務(wù)器的數(shù)據(jù),并且長連接不需要第一網(wǎng)頁向服務(wù)器請求數(shù)據(jù),服務(wù)器可以在建立長連接后,主動向第一網(wǎng)頁推送數(shù)據(jù)。
在本實(shí)施例中,第二數(shù)據(jù)是根據(jù)第一數(shù)據(jù)生成的,因此,向第一網(wǎng)頁推送的第二數(shù)據(jù)是與第一網(wǎng)頁收集的第一數(shù)據(jù)相匹配的,在第一數(shù)據(jù)體現(xiàn)用戶的行為習(xí)慣或者興趣偏好時,推送的第二數(shù)據(jù)可以精準(zhǔn)匹配用戶所需的數(shù)據(jù),解決了現(xiàn)有技術(shù)無法精準(zhǔn)推送數(shù)據(jù)的技術(shù)問題。進(jìn)一步地,因?yàn)榈谝痪W(wǎng)頁和服務(wù)器之間通過全雙工通訊的長連接進(jìn)行通信,服務(wù)器可以實(shí)時獲取目標(biāo)網(wǎng)頁捕捉到的第一數(shù)據(jù),也就能夠?qū)崟r根據(jù)第一數(shù)據(jù)生成第二數(shù)據(jù),并實(shí)時將生成的第二數(shù)據(jù)推送給第一網(wǎng)頁。在服務(wù)器推送第二數(shù)據(jù)的過程中,并不需要第一網(wǎng)頁和目標(biāo)網(wǎng)頁向服務(wù)器發(fā)起數(shù)據(jù)請求,也就實(shí)現(xiàn)了服務(wù)器實(shí)時向第一網(wǎng)頁推送第二數(shù)據(jù),達(dá)到了實(shí)時、精準(zhǔn)推送數(shù)據(jù)的效果。
在一些實(shí)施例中,用戶A瀏覽目標(biāo)網(wǎng)頁時,對目標(biāo)網(wǎng)頁中的“汽車”相關(guān)的信息進(jìn)行了點(diǎn)擊、在關(guān)于汽車的廣告部分停留了較長的時間,目標(biāo)網(wǎng)頁捕捉用戶A的點(diǎn)擊行為和瀏覽的停留時間(第一數(shù)據(jù)),并通過第一網(wǎng)頁發(fā)送給服務(wù)器。服務(wù)器根據(jù)點(diǎn)擊行為和瀏覽的停留時間確定出用戶A對汽車比較感興趣,生成汽車相關(guān)的廣告信息、用戶關(guān)注的汽車品牌的折扣信息等,服務(wù)器生成的這些信息作為第二數(shù)據(jù)發(fā)送給第一網(wǎng)頁,第一網(wǎng)頁轉(zhuǎn)發(fā)廣告信息和折扣信息給目標(biāo)網(wǎng)頁。
在另外一些實(shí)施例中,用戶B瀏覽目標(biāo)網(wǎng)頁時,對目標(biāo)網(wǎng)頁中的對目標(biāo)網(wǎng)頁中的“美食”相關(guān)的信息進(jìn)行了點(diǎn)擊、在關(guān)于美食的廣告部分停留了較長的時間,目標(biāo)網(wǎng)頁捕捉用戶B的點(diǎn)擊行為和瀏覽的停留時間(第一數(shù)據(jù)),并通過第一網(wǎng)頁發(fā)送給服務(wù)器。服務(wù)器根據(jù)點(diǎn)擊行為和瀏覽的停留時間確定出用戶B對美食比較感興趣,生成美食相關(guān)的廣告信息、用戶關(guān)注的美食品牌的折扣信息等,服務(wù)器生成的這些信息作為第二數(shù)據(jù)發(fā)送給第一網(wǎng)頁,第一網(wǎng)頁轉(zhuǎn)發(fā)廣告信息和折扣信息給目標(biāo)網(wǎng)頁。
由于本實(shí)施例的第二數(shù)據(jù)的推送是根據(jù)第一數(shù)據(jù)生成的,第一數(shù)據(jù)能夠體現(xiàn)用戶的興趣和愛好,因此,服務(wù)器可以實(shí)時并且精準(zhǔn)的推送用戶需要的信息。
對于廣告投放來說,可以實(shí)時且精準(zhǔn)的向用戶推送廣告,推送廣告的時刻是用戶具有消費(fèi)傾向的時候,因此,及時推送的廣告能夠在用戶的消費(fèi)沖動消失前促進(jìn)用戶的消費(fèi)。
在本實(shí)施例中,為了實(shí)現(xiàn)實(shí)時向第一網(wǎng)頁推送消息,第一網(wǎng)頁與服務(wù)器建立長連接。在介紹本實(shí)施例的長連接之前,先介紹現(xiàn)有的長連接?,F(xiàn)有的長連接主要是通過第一網(wǎng)頁每隔一段時間發(fā)送一個心跳包至服務(wù)器刷新心跳時間。在網(wǎng)頁上保持長連接與app應(yīng)用的長連接不一樣的地方在于,app應(yīng)用從一個頁面跳轉(zhuǎn)到另外一個頁面時,不需要斷開網(wǎng)頁再重連,而網(wǎng)頁端從一個頁面跳轉(zhuǎn)到另外一個頁面時需要經(jīng)過一次連接斷開再重連的過程,這就導(dǎo)致在頁面跳轉(zhuǎn)時長連接不能持續(xù)。
為了解決網(wǎng)頁端的長連接不能持續(xù)的問題,本實(shí)施例在創(chuàng)建長連接時,將目標(biāo)網(wǎng)頁嵌套在第一頁面的iframe標(biāo)簽中,建立第一頁面與服務(wù)器的長連接,嵌套在iframe標(biāo)簽中的目標(biāo)網(wǎng)頁在iframe標(biāo)簽中執(zhí)行跳轉(zhuǎn),iframe標(biāo)簽外部的第一網(wǎng)頁與服務(wù)器保持的長連接并不會因?yàn)閕frame標(biāo)簽內(nèi)部目標(biāo)網(wǎng)頁的跳轉(zhuǎn)而斷開,從而保證了第一網(wǎng)頁與服務(wù)器之間長連接的穩(wěn)定性。
在本實(shí)施例中設(shè)置的iframe標(biāo)簽保證了長連接的持續(xù)性和穩(wěn)定性,同時長連接是全雙工通信,可以在第一網(wǎng)頁和服務(wù)器之間實(shí)現(xiàn)長時間實(shí)時數(shù)據(jù)傳輸,也就是說,服務(wù)器可以實(shí)時根據(jù)第一網(wǎng)頁捕捉的第一數(shù)據(jù)向第一網(wǎng)頁端推送第二數(shù)據(jù)。另外,由于第一網(wǎng)頁的捕捉是無侵入的方式,用戶的操作不會被捕捉打擾,不會降低用戶體驗(yàn)。
可選地,創(chuàng)建單元包括:請求模塊,用于通過http協(xié)議向服務(wù)器發(fā)起握手請求;檢測模塊,用于檢測服務(wù)器響應(yīng)握手請求所發(fā)送的握手響應(yīng);創(chuàng)建模塊,用于在第一網(wǎng)頁檢測到握手響應(yīng)后,創(chuàng)建基于全雙工通信的長連接。
在建立websocket的全雙工通訊時,只需要借助http協(xié)議向服務(wù)器發(fā)起握手請求,完成與服務(wù)器的握手后,就能夠?qū)崟r進(jìn)行雙工通訊了。
可選地,創(chuàng)建單元包括:加載模塊,用于加載flash文件,其中,flash文件包括通過接口執(zhí)行全雙工通訊的執(zhí)行邏輯;第一調(diào)用模塊,用于在flash文件聲明接口后按照執(zhí)行邏輯調(diào)用接口;第二調(diào)用模塊,用于調(diào)用接口向服務(wù)器發(fā)送連接請求;響應(yīng)模塊,用于通過接口接收響應(yīng)連接請求的連接響應(yīng),其中,在響應(yīng)模塊接收到連接響應(yīng)后,確定第一網(wǎng)頁完成創(chuàng)建采用全雙工通訊的連接。
可選地,第一傳輸單元包括:第三調(diào)用模塊,用于調(diào)用flash文件聲明的接口主動向服務(wù)器傳輸?shù)谝粩?shù)據(jù)。
可選地,第二傳輸單元包括:第四調(diào)用模塊,用于調(diào)用flash文件聲明的接口接收服務(wù)器通過長連接推送的第二數(shù)據(jù)。
可選地,裝置還包括:調(diào)用單元,用于在調(diào)用js邏輯創(chuàng)建采用全雙工通訊的長連接之后,調(diào)用flash的關(guān)閉長連接的關(guān)閉接口,其中,在關(guān)閉接口內(nèi)部調(diào)用底層套接字關(guān)閉長連接。
在一些實(shí)施例中,上述游戲第一網(wǎng)頁可以是即時通訊網(wǎng)頁,如微信等。在用戶瀏覽微信的朋友圈時,根據(jù)用戶在朋友圈的某類信息的關(guān)注時間和點(diǎn)擊量等實(shí)時為用戶推送相關(guān)類別的新聞、商品信息等。
在一些實(shí)施例中,上述游戲第一網(wǎng)頁還可以是視頻網(wǎng)頁。根據(jù)用戶對某部影片的觀看情況實(shí)時為用戶推送相關(guān)影片的信息,或者實(shí)時為用戶推送視頻網(wǎng)頁的會員優(yōu)惠信息等。
實(shí)施例3
根據(jù)本發(fā)明實(shí)施例,還提供了一種用于實(shí)施上述數(shù)據(jù)傳輸方法的終端,如圖7所示,該終端主要包括處理器701、攝像頭702、顯示器703、數(shù)據(jù)接口704、存儲器705和網(wǎng)絡(luò)接口706,其中:
攝像頭702主要用于采集用戶的身份信息和頭像信息等。
數(shù)據(jù)接口704則主要通過數(shù)據(jù)傳輸?shù)姆绞綄⒌谌焦ぞ攉@取的數(shù)據(jù)傳輸給處理器701。
存儲器705主要用于網(wǎng)頁的邏輯和用戶的操作行為數(shù)據(jù)。
網(wǎng)絡(luò)接口706主要用于與服務(wù)器進(jìn)行網(wǎng)絡(luò)通信,為數(shù)據(jù)傳輸提供支持。
顯示器703主要用于顯示目標(biāo)網(wǎng)頁和第二數(shù)據(jù)。
處理器701主要用于執(zhí)行如下操作:
在打開目標(biāo)網(wǎng)頁時第一網(wǎng)頁調(diào)用js邏輯創(chuàng)建采用全雙工通訊的長連接,其中,目標(biāo)網(wǎng)頁嵌套在第一網(wǎng)頁的iframe標(biāo)簽中;第一網(wǎng)頁通過長連接向服務(wù)器傳輸?shù)谝粩?shù)據(jù),第一數(shù)據(jù)由目標(biāo)網(wǎng)頁捕捉得到;第一網(wǎng)頁接收服務(wù)器通過長連接推送的第二數(shù)據(jù),第二數(shù)據(jù)根據(jù)第一網(wǎng)頁上報的第一數(shù)據(jù)生成,其中,在第一網(wǎng)頁接收第二數(shù)據(jù)之前,第一網(wǎng)頁不向服務(wù)器發(fā)送用于請求第二數(shù)據(jù)的數(shù)據(jù)請求;第一網(wǎng)頁向目標(biāo)網(wǎng)頁發(fā)送第二數(shù)據(jù)。
處理器701還用于第一網(wǎng)頁通過http協(xié)議向服務(wù)器發(fā)起握手請求;第一網(wǎng)頁檢測服務(wù)器響應(yīng)握手請求所發(fā)送的握手響應(yīng);在第一網(wǎng)頁檢測到握手響應(yīng)后,創(chuàng)建基于全雙工通信的長連接。
處理器701還用于:第一網(wǎng)頁加載flash文件,其中,flash文件包括通過接口執(zhí)行全雙工通訊的執(zhí)行邏輯;在flash文件聲明接口后第一網(wǎng)頁按照執(zhí)行邏輯調(diào)用接口;第一網(wǎng)頁調(diào)用接口向服務(wù)器發(fā)送連接請求;第一網(wǎng)頁通過接口接收響應(yīng)連接請求的連接響應(yīng),其中,在第一網(wǎng)頁接收到連接響應(yīng)后,確定第一網(wǎng)頁完成創(chuàng)建采用全雙工通訊的連接。
處理器701還用于:第一網(wǎng)頁調(diào)用flash文件聲明的接口主動向服務(wù)器傳輸?shù)谝粩?shù)據(jù)。
處理器701還用于:第一網(wǎng)頁調(diào)用flash文件聲明的接口接收服務(wù)器通過長連接推送的第二數(shù)據(jù)。
處理器701還用于:第一網(wǎng)頁調(diào)用flash的關(guān)閉長連接的關(guān)閉接口,其中,在關(guān)閉接口內(nèi)部調(diào)用底層套接字關(guān)閉長連接。
處理器701還用于:第一網(wǎng)頁創(chuàng)建websocket的全雙工通訊的長連接或者調(diào)用flash web socket提供的接口執(zhí)行全雙工通訊。
可選地,本實(shí)施例中的具體示例可以參考上述實(shí)施例1和實(shí)施例2中所描述的示例,本實(shí)施例在此不再贅述。
實(shí)施例4
本發(fā)明的實(shí)施例還提供了一種存儲介質(zhì)??蛇x地,在本實(shí)施例中,上述存儲介質(zhì)可以用于存儲本發(fā)明實(shí)施例的數(shù)據(jù)傳輸方法的程序代碼。
可選地,在本實(shí)施例中,上述存儲介質(zhì)可以位于移動通信網(wǎng)絡(luò)、廣域網(wǎng)、城域網(wǎng)或局域網(wǎng)的網(wǎng)絡(luò)中的多個網(wǎng)絡(luò)設(shè)備中的至少一個網(wǎng)絡(luò)設(shè)備。
可選地,在本實(shí)施例中,存儲介質(zhì)被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:
S1,在打開目標(biāo)網(wǎng)頁時第一網(wǎng)頁調(diào)用js邏輯創(chuàng)建采用全雙工通訊的長連接;
S2,所述第一網(wǎng)頁通過所述長連接向服務(wù)器傳輸?shù)谝粩?shù)據(jù);
S3,所述第一網(wǎng)頁接收所述服務(wù)器通過所述長連接推送的第二數(shù)據(jù);
S4,所述第一網(wǎng)頁向所述目標(biāo)網(wǎng)頁發(fā)送所述第二數(shù)據(jù)。
可選地,在本實(shí)施例中,上述存儲介質(zhì)可以包括但不限于:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機(jī)存取存儲器(RAM,RandomAccess Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行:第一網(wǎng)頁通過http協(xié)議向服務(wù)器發(fā)起握手請求;第一網(wǎng)頁檢測服務(wù)器響應(yīng)握手請求所發(fā)送的握手響應(yīng);在第一網(wǎng)頁檢測到握手響應(yīng)后,創(chuàng)建基于全雙工通信的長連接。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行:第一網(wǎng)頁加載flash文件,其中,flash文件包括通過接口執(zhí)行全雙工通訊的執(zhí)行邏輯;在flash文件聲明接口后第一網(wǎng)頁按照執(zhí)行邏輯調(diào)用接口;第一網(wǎng)頁調(diào)用接口向服務(wù)器發(fā)送連接請求;第一網(wǎng)頁通過接口接收響應(yīng)連接請求的連接響應(yīng),其中,在第一網(wǎng)頁接收到連接響應(yīng)后,確定第一網(wǎng)頁完成創(chuàng)建采用全雙工通訊的連接。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行:第一網(wǎng)頁調(diào)用flash文件聲明的接口主動向服務(wù)器傳輸?shù)谝粩?shù)據(jù)。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行:第一網(wǎng)頁調(diào)用flash文件聲明的接口接收服務(wù)器通過長連接推送的第二數(shù)據(jù)。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行:第一網(wǎng)頁調(diào)用flash的關(guān)閉長連接的關(guān)閉接口,其中,在關(guān)閉接口內(nèi)部調(diào)用底層套接字關(guān)閉長連接。
可選地,本實(shí)施例中的具體示例可以參考上述實(shí)施例1和實(shí)施例2中所描述的示例,本實(shí)施例在此不再贅述。
上述本發(fā)明實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
上述實(shí)施例中的集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時,可以存儲在上述計算機(jī)可讀取的存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品存儲在存儲介質(zhì)中,包括若干指令用以使得一臺或多臺計算機(jī)設(shè)備(可為個人計算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實(shí)施例所述方法的全部或部分步驟。
在本發(fā)明的上述實(shí)施例中,對各個實(shí)施例的描述都各有側(cè)重,某個實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。
在本申請所提供的幾個實(shí)施例中,應(yīng)該理解到,所揭露的第一網(wǎng)頁,可通過其它的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個實(shí)施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨(dú)物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。