本發(fā)明實(shí)施例涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及代理網(wǎng)絡(luò)協(xié)議的方法、裝置以及電子設(shè)備。
背景技術(shù):
目前,軟件TinyProxy(輕代理)是一個在標(biāo)準(zhǔn)操作系統(tǒng)中輕量級的代理http協(xié)議的軟件。軟件TinyProxy采用多進(jìn)程模式對http的請求進(jìn)行代理,該軟件的優(yōu)勢是輕便簡單且無需過多的配置。
發(fā)明人在研究本申請的過程中發(fā)現(xiàn),現(xiàn)有技術(shù)中至少存在以下技術(shù)問題:由于軟件TinyProxy不支持代理https協(xié)議和rtmp協(xié)議(實(shí)時消息傳輸協(xié)議),因而限制了軟件TinyProxy的應(yīng)用范圍。
因此,如何擴(kuò)大軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,成為亟待解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例所要解決的技術(shù)問題是,擴(kuò)大軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍。
為了解決上述技術(shù)問題,本發(fā)明實(shí)施例一方面采用了以下的技術(shù)方案:
一種代理網(wǎng)絡(luò)協(xié)議的方法,包括:請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口;將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口;通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,其中所述請求的數(shù)據(jù)根據(jù)所述網(wǎng)絡(luò)協(xié)議傳輸;當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
在本發(fā)明一個或者多個實(shí)施例中,使用防火墻將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。
在本發(fā)明一個或者多個實(shí)施例中,所述通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,包括:按空格拆分所述請求的數(shù)據(jù);當(dāng)所述請求的數(shù)據(jù)不能按空格拆分為2或3個數(shù)據(jù)段時,判斷所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議。
在本發(fā)明一個或者多個實(shí)施例中,當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,所述方法還包括:當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,所述方法還包括:當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為預(yù)設(shè)的https協(xié)議網(wǎng)絡(luò)端口時,判斷所述非http協(xié)議為https協(xié)議;當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為預(yù)設(shè)的rtmp協(xié)議網(wǎng)絡(luò)端口時,判斷所述非http協(xié)議為rtmp協(xié)議。
在本發(fā)明一個或者多個實(shí)施例中,當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求,包括:創(chuàng)建應(yīng)用的uid白名單;當(dāng)所述uid白名單包括發(fā)起所述數(shù)據(jù)請求的應(yīng)用的uid時,判斷所述數(shù)據(jù)請求為免流請求。
在本發(fā)明一個或者多個實(shí)施例中,當(dāng)所述數(shù)據(jù)請求為免流請求時,為所述數(shù)據(jù)請求添加免流標(biāo)識,所述免流標(biāo)識至少包括:電話號碼、時間戳、以及操作系統(tǒng)類型;所述免流標(biāo)識的格式包括:請求格式、響應(yīng)成功格式以及響應(yīng)失敗格式。
在本發(fā)明一個或者多個實(shí)施例中,所述方法還包括:當(dāng)所述網(wǎng)絡(luò)協(xié)議為http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
另一方面,本發(fā)明實(shí)施例還公開一種代理網(wǎng)絡(luò)協(xié)議的裝置,包括:網(wǎng)絡(luò)端口模塊,用于請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口;將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口;數(shù)據(jù)請求模塊,用于通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,其中所述請求的數(shù)據(jù)根據(jù)所述網(wǎng)絡(luò)協(xié)議傳輸;當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求;發(fā)送模塊,用于當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
另一方面,本發(fā)明實(shí)施例還公開一種代理網(wǎng)絡(luò)協(xié)議的電子設(shè)備,包括:至少一個處理器,以及至少一個存儲器;所述至少一個處理器與所述至少一個存儲器通信連接;所述至少一個存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,以使所述至少一個處理器執(zhí)行上述任意一種代理網(wǎng)絡(luò)協(xié)議的方法。
另一方面,本發(fā)明實(shí)施例還公開一種非暫態(tài)計(jì)算機(jī)存儲介質(zhì),所述計(jì)算機(jī)存儲介質(zhì)存儲有計(jì)算機(jī)可執(zhí)行指令,所述計(jì)算機(jī)可執(zhí)行指令用于執(zhí)行上述任意一種代理網(wǎng)絡(luò)協(xié)議的方法。
另一方面,本發(fā)明實(shí)施例還公開一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括存儲在非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì)上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包括程序指令,當(dāng)所述程序指令被計(jì)算機(jī)執(zhí)行時,使所述計(jì)算機(jī)執(zhí)行上述任意一種代理網(wǎng)絡(luò)協(xié)議的方法。
與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例主要有以下有益效果:
本發(fā)明實(shí)施例,通過請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口;通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,其中所述請求的數(shù)據(jù)根據(jù)所述網(wǎng)絡(luò)協(xié)議傳輸。上述偵聽機(jī)制,能夠判斷所述請求的數(shù)據(jù)是否根據(jù)非http協(xié)議協(xié)議傳輸。當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。據(jù)此,本發(fā)明實(shí)施例能夠代理非http協(xié)議,并區(qū)分處理所述免流請求與所述非免流請求。綜上所述,本發(fā)明實(shí)施例擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
圖1為本發(fā)明一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的方法的流程圖;
圖2為本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的方法的流程圖;
圖3為本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的示意圖;
圖4為本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的裝置的示意圖;
圖5為本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的裝置的示意圖;
圖6為本發(fā)明另一實(shí)施例中電子設(shè)備的硬件結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚而完整的描述。所描述的實(shí)施例是本發(fā)明一部分較佳的實(shí)施例,而不是全部可行的實(shí)施例?;诒景l(fā)明具體實(shí)施方式中的各個實(shí)施例,本領(lǐng)域的任何技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的其他實(shí)施例,都應(yīng)屬于本發(fā)明保護(hù)的范圍。
除非另有定義,本文所使用的所有技術(shù)和科學(xué)術(shù)語與本發(fā)明技術(shù)領(lǐng)域的技術(shù)人員通常理解的含義相同。本文中所使用的任何術(shù)語只是為了描述具體的實(shí)施例,并非旨在限制本發(fā)明的保護(hù)范圍。
本文中涉及到的各種網(wǎng)絡(luò)端口是軟件意義上的網(wǎng)絡(luò)端口。
參考圖1,為本發(fā)明一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的方法的流程圖。本發(fā)明一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的方法基于軟件TinyProxy,應(yīng)用于智能手機(jī)、平板電腦等電子設(shè)備。
所述代理網(wǎng)絡(luò)協(xié)議的方法包括:
步驟101:請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口;將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。
步驟102:通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,其中所述請求的數(shù)據(jù)根據(jù)所述網(wǎng)絡(luò)協(xié)議傳輸;當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求。
步驟103:當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
上述代理網(wǎng)絡(luò)協(xié)議的方法,通過請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口;通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,其中所述請求的數(shù)據(jù)根據(jù)所述網(wǎng)絡(luò)協(xié)議傳輸。上述偵聽機(jī)制,能夠判斷所述請求的數(shù)據(jù)是否根據(jù)非http協(xié)議協(xié)議傳輸。當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。據(jù)此,本發(fā)明實(shí)施例能夠代理非http協(xié)議,并區(qū)分處理所述免流請求與所述非免流請求。綜上所述,本發(fā)明一實(shí)施例中所述代理網(wǎng)絡(luò)協(xié)議的方法,擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
參考圖2,為本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的方法的流程圖。本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的方法基于軟件TinyProxy,應(yīng)用于智能手機(jī)、平板電腦等電子設(shè)備。
所述代理網(wǎng)絡(luò)協(xié)議的方法包括:
步驟201:請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口;使用防火墻將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。
步驟202:通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),按空格拆分所述請求的數(shù)據(jù);當(dāng)所述請求的數(shù)據(jù)不能按空格拆分為2或3個數(shù)據(jù)段時,判斷所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議。
步驟203:當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為預(yù)設(shè)的https協(xié)議網(wǎng)絡(luò)端口時,判斷所述非http協(xié)議為https協(xié)議;當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為預(yù)設(shè)的rtmp協(xié)議網(wǎng)絡(luò)端口時,判斷所述非http協(xié)議為rtmp協(xié)議。
步驟204:創(chuàng)建應(yīng)用的uid白名單;當(dāng)所述uid白名單包括發(fā)起所述數(shù)據(jù)請求的應(yīng)用的uid時,判斷所述數(shù)據(jù)請求為免流請求。
步驟205:當(dāng)所述數(shù)據(jù)請求為免流請求時,為所述數(shù)據(jù)請求添加免流標(biāo)識,至少包括:電話號碼、時間戳、操作系統(tǒng)類型;所述免流標(biāo)識的格式包括:請求格式、響應(yīng)成功格式以及響應(yīng)失敗格式。
步驟206:當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
在本發(fā)明的一些實(shí)施例中,所述代理網(wǎng)絡(luò)協(xié)議的方法還包括:當(dāng)所述網(wǎng)絡(luò)協(xié)議為http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
下面將舉例對本發(fā)明本發(fā)明又一實(shí)施例中所述代理網(wǎng)絡(luò)協(xié)議的方法作進(jìn)一說明。
參考圖3,為本發(fā)明的第二實(shí)施例所述代理網(wǎng)絡(luò)協(xié)議的示意圖。
所述終端的某個應(yīng)用(APP)需要通過互聯(lián)網(wǎng)請求數(shù)據(jù)時,請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口。所述終端使用防火墻將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。所述代理監(jiān)聽的網(wǎng)絡(luò)端口即所述軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口。假定所述代理監(jiān)聽的網(wǎng)絡(luò)端口為8888。
所述終端通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀應(yīng)用請求的數(shù)據(jù),按空格拆分所述請求的數(shù)據(jù)。當(dāng)所述請求的數(shù)據(jù)不能按空格拆分為2或3個數(shù)據(jù)段時,所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議。
假定預(yù)設(shè)的https協(xié)議網(wǎng)絡(luò)端口為443。假定預(yù)設(shè)的rtmp協(xié)議網(wǎng)絡(luò)端口為:1935。當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為443時,判斷所述非http協(xié)議為https協(xié)議。當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為1935時,判斷所述非http協(xié)議為rtmp協(xié)議。
所述終端創(chuàng)建應(yīng)用的uid白名單。當(dāng)所述uid白名單包括發(fā)起所述數(shù)據(jù)請求的應(yīng)用的uid時,判斷所述數(shù)據(jù)請求為免流請求。
當(dāng)所述數(shù)據(jù)請求為免流請求時,所述終端為所述數(shù)據(jù)請求添加免流標(biāo)識。
當(dāng)所述終端的應(yīng)用根據(jù)所述網(wǎng)絡(luò)協(xié)議(包括http協(xié)議和非http協(xié)議)發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
上述代理網(wǎng)絡(luò)協(xié)議的方法,通過請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,使用防火墻將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),按空格拆分所述請求的數(shù)據(jù);當(dāng)所述請求的數(shù)據(jù)不能按空格拆分為2或3個數(shù)據(jù)段時,判斷所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議。上述偵聽機(jī)制,能夠判斷所述請求的數(shù)據(jù)是否根據(jù)非http協(xié)議協(xié)議傳輸。創(chuàng)建應(yīng)用的uid白名單;當(dāng)所述uid白名單包括發(fā)起所述數(shù)據(jù)請求的應(yīng)用的uid時,判斷所述數(shù)據(jù)請求為免流請求。當(dāng)所述數(shù)據(jù)請求為免流請求時,為所述數(shù)據(jù)請求添加免流標(biāo)識。當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議(包括http協(xié)議和非http協(xié)議)發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器。當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議(包括http協(xié)議和非http協(xié)議)發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。據(jù)此,本發(fā)明實(shí)施例能夠代理非http協(xié)議,并區(qū)分處理所述免流請求與所述非免流請求。綜上所述,本發(fā)明又一實(shí)施例中所述代理網(wǎng)絡(luò)協(xié)議的方法,擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
參考圖4,為本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的裝置的示意圖。
本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的裝置包括:
網(wǎng)絡(luò)端口模塊1,用于請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口;將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。
數(shù)據(jù)請求模塊2,用于通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,其中所述請求的數(shù)據(jù)根據(jù)所述網(wǎng)絡(luò)協(xié)議傳輸;當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求。
發(fā)送模塊3,用于當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
上述代理網(wǎng)絡(luò)協(xié)議的裝置通過網(wǎng)絡(luò)端口模塊1請求網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。所述數(shù)據(jù)請求模塊2通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),判斷所述網(wǎng)絡(luò)協(xié)議是否為非http協(xié)議,其中所述請求的數(shù)據(jù)根據(jù)所述網(wǎng)絡(luò)協(xié)議傳輸;當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求。所述代理網(wǎng)絡(luò)協(xié)議的裝置的上述偵聽機(jī)制,能夠判斷所述請求的數(shù)據(jù)是否根據(jù)非http協(xié)議協(xié)議傳輸。通過發(fā)送模塊3,當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。據(jù)此,本發(fā)明實(shí)施例所述代理網(wǎng)絡(luò)協(xié)議的裝置能夠代理非http協(xié)議,并區(qū)分處理所述免流請求與所述非免流請求。綜上所述,本發(fā)明又一實(shí)施例中所述代理網(wǎng)絡(luò)協(xié)議的裝置,擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
參考圖5,為本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的裝置的示意圖。
本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的裝置包括:
網(wǎng)絡(luò)端口模塊10,用于使用防火墻將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。
數(shù)據(jù)請求模塊20,用于通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),按空格拆分所述請求的數(shù)據(jù);當(dāng)所述請求的數(shù)據(jù)不能按空格拆分為2或3個數(shù)據(jù)段時,判斷所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議;當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求。
在本發(fā)明的一些實(shí)施例中,所述數(shù)據(jù)請求模塊20,還用于當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為預(yù)設(shè)的https協(xié)議網(wǎng)絡(luò)端口時,判斷所述非http協(xié)議為https協(xié)議;當(dāng)所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口為預(yù)設(shè)的rtmp協(xié)議網(wǎng)絡(luò)端口時,判斷所述非http協(xié)議為rtmp協(xié)議。
在本發(fā)明的一些實(shí)施例中,當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,所述數(shù)據(jù)請求模塊20判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求,包括:創(chuàng)建應(yīng)用的uid白名單;當(dāng)所述uid白名單包括發(fā)起所述數(shù)據(jù)請求的應(yīng)用的uid,判斷所述數(shù)據(jù)請求為免流請求。
免流標(biāo)識添加模塊30,用于當(dāng)所述數(shù)據(jù)請求為免流請求時,為所述數(shù)據(jù)請求添加免流標(biāo)識,至少包括:電話號碼、時間戳、操作系統(tǒng)類型;所述免流標(biāo)識的格式包括:請求格式、響應(yīng)成功格式以及響應(yīng)失敗格式。
發(fā)送模塊40,用于當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議(包括http協(xié)議和非http協(xié)議)發(fā)起的數(shù)據(jù)請求為免流請求時,將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。
上述述代理網(wǎng)絡(luò)協(xié)議的裝置,通過所述網(wǎng)絡(luò)端口模塊10使用防火墻將所述網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)端口,重定向到代理監(jiān)聽的網(wǎng)絡(luò)端口。所述數(shù)據(jù)請求模塊20通過所述代理監(jiān)聽的網(wǎng)絡(luò)端口預(yù)讀請求的數(shù)據(jù),按空格拆分所述請求的數(shù)據(jù);當(dāng)所述請求的數(shù)據(jù)不能按空格拆分為2或3個數(shù)據(jù)段時,判斷所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議;當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求。所述代理網(wǎng)絡(luò)協(xié)議的裝置的上述偵聽機(jī)制,能夠判斷所述請求的數(shù)據(jù)是否根據(jù)非http協(xié)議協(xié)議傳輸。當(dāng)所述網(wǎng)絡(luò)協(xié)議為非http協(xié)議時,通過所述數(shù)據(jù)請求模塊20判斷根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求是否為免流請求。當(dāng)所述數(shù)據(jù)請求為免流請求時,通過所述免流標(biāo)識添加模塊30為所述數(shù)據(jù)請求添加免流標(biāo)識。當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為免流請求時,通過所述發(fā)送模塊40將所述數(shù)據(jù)請求發(fā)送給免流服務(wù)器;當(dāng)根據(jù)所述網(wǎng)絡(luò)協(xié)議發(fā)起的數(shù)據(jù)請求為非免流請求時,通過所述發(fā)送模塊40將所述數(shù)據(jù)請求發(fā)送到外網(wǎng)。據(jù)此,本發(fā)明實(shí)施例所述代理網(wǎng)絡(luò)協(xié)議的裝置能夠代理非http協(xié)議,并區(qū)分處理所述免流請求與所述非免流請求。綜上所述,本發(fā)明又一實(shí)施例中代理網(wǎng)絡(luò)協(xié)議的裝置,擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
本發(fā)明又一實(shí)施例公開一種非暫態(tài)計(jì)算機(jī)存儲介質(zhì),所述計(jì)算機(jī)存儲介質(zhì)存儲有計(jì)算機(jī)可執(zhí)行指令,所述計(jì)算機(jī)可執(zhí)行指令用于執(zhí)行上述任意方法實(shí)施例中的方法。
本發(fā)明又一實(shí)施例所述的非暫態(tài)計(jì)算機(jī)存儲介質(zhì)通過執(zhí)行上述任意方法實(shí)施例中的方法,擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
參考圖6,為本發(fā)明另一實(shí)施例中電子設(shè)備的硬件結(jié)構(gòu)示意圖。本發(fā)明另一實(shí)施例中公開的電子設(shè)備包括:一個或多個處理器610以及存儲器620。以一個處理器610為例。該設(shè)備還可以包括:輸入裝置630和輸出裝置640。
處理器610、存儲器620、輸入裝置630和輸出裝置640可以通過總線或者其他方式連接,圖6中以通過總線連接為例。
存儲器620作為一種非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì),可用于存儲非暫態(tài)軟件程序、非暫態(tài)計(jì)算機(jī)可執(zhí)行程序等。處理器610通過運(yùn)行存儲在存儲器中的非暫態(tài)軟件程序、指令,從而執(zhí)行電子設(shè)備的各種功能應(yīng)用以及數(shù)據(jù)處理。
存儲器620可以包括存儲程序區(qū)和存儲數(shù)據(jù)區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個功能所需要的應(yīng)用程序;存儲數(shù)據(jù)區(qū)可存儲數(shù)據(jù)等。此外,存儲器620可以包括高速隨機(jī)存取存儲器,還可以包括非暫態(tài)存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他非暫態(tài)固態(tài)存儲器件。在一些實(shí)施例中,存儲器620可選包括相對于處理器610遠(yuǎn)程設(shè)置的存儲器,這些遠(yuǎn)程存儲器可以通過網(wǎng)絡(luò)連接至電子設(shè)備。上述網(wǎng)絡(luò)的實(shí)例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。
輸入裝置630可接收輸入的數(shù)字或字符信息,以及產(chǎn)生信號輸入。輸出裝置640可包括顯示屏等顯示設(shè)備。
所述一個或者多個處理器610運(yùn)行存儲在存儲器620中的非暫態(tài)軟件程序、指令,執(zhí)行上述任意方法實(shí)施例中的任意一種方法。
本發(fā)明另一實(shí)施例中所述的電子設(shè)備,擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
本發(fā)明另一實(shí)施例公開一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括存儲在非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì)上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包括程序指令,當(dāng)所述程序指令被計(jì)算機(jī)執(zhí)行時,使所述計(jì)算機(jī)執(zhí)行上述任意方法實(shí)施例中的方法。
本發(fā)明另一實(shí)施例公開的計(jì)算機(jī)程序產(chǎn)品通過執(zhí)行上述任意方法實(shí)施例中的方法,擴(kuò)大了軟件TinyProxy代理網(wǎng)絡(luò)協(xié)議的范圍,進(jìn)而擴(kuò)大了軟件TinyProxy的應(yīng)用范圍。
本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)理解到,上述實(shí)施例中的代理網(wǎng)絡(luò)協(xié)議的裝置、代理網(wǎng)絡(luò)協(xié)議的電子設(shè)備、非暫態(tài)計(jì)算機(jī)存儲介質(zhì)等還可以通過其他方式實(shí)現(xiàn)。
當(dāng)使用到軟件實(shí)現(xiàn)時,可以將實(shí)現(xiàn)上述各個實(shí)施例的計(jì)算機(jī)指令和/或數(shù)據(jù)存儲在計(jì)算機(jī)可讀介質(zhì)中或作為可讀介質(zhì)上的一個或多個指令或代碼進(jìn)行傳輸。計(jì)算機(jī)可讀介質(zhì)包括計(jì)算機(jī)存儲介質(zhì)和通信介質(zhì),其中通信介質(zhì)包括便于從一個地方向另一個地方傳送計(jì)算機(jī)程序的任何介質(zhì)。存儲介質(zhì)可以是計(jì)算機(jī)能夠存儲的任何可用介質(zhì)。以此為例但不限于次:計(jì)算機(jī)可讀介質(zhì)可以包括RAM、ROM、EEPROM、CD-ROM或其他光盤存儲、磁盤存儲介質(zhì)或者其他磁存儲設(shè)備、或者能夠攜帶或存儲具有指令或數(shù)據(jù)結(jié)構(gòu)形式的期望的程序代碼并能夠由計(jì)算機(jī)存取的任何其他介質(zhì)。此外,任何連接可以適當(dāng)?shù)某蔀橛?jì)算機(jī)可讀介質(zhì)。例如,如果軟件是使用同軸電纜、光釬光纜、雙絞線、數(shù)字用戶線(DSL)或者諸如紅外線、無線電和微波之類的無線技術(shù)從網(wǎng)站、服務(wù)器或者其他遠(yuǎn)程源傳輸?shù)?,那么同軸電纜、光釬光纜、雙絞線、DSL或者諸如紅外線、無線和微波之類的無線技術(shù)包括在所屬介質(zhì)的定義中。
通過以上所有的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到各實(shí)施方式可借助軟件加必需的通用硬件平臺來實(shí)現(xiàn),當(dāng)然也可以通過硬件。基于這樣的理解,上述技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲在計(jì)算機(jī)可讀存儲介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備執(zhí)行各個實(shí)施例或者實(shí)施例的某些部分所述的方法。
上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受上述實(shí)施例的限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、替代、組合、簡化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。