一種處理連續(xù)重定向的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及互聯(lián)網(wǎng)領(lǐng)域,尤其是涉及一種處理連續(xù)重定向的方法和裝置。
【背景技術(shù)】
[0002]在大型網(wǎng)站或者分布式系統(tǒng)中,客戶端(瀏覽器)向服務(wù)器發(fā)送業(yè)務(wù)請(qǐng)求時(shí),該業(yè)務(wù)請(qǐng)求被發(fā)送至地址A,之后該業(yè)務(wù)請(qǐng)求被服務(wù)器302重定向到地址B,之后該業(yè)務(wù)請(qǐng)求被服務(wù)器302重定向到地址C,之后該業(yè)務(wù)請(qǐng)求被服務(wù)器302重定向到地址D,以此類(lèi)推,該業(yè)務(wù)請(qǐng)求可能被多次進(jìn)行302重定向。
[0003]但是,瀏覽器對(duì)于302重定向的次數(shù)是有限制的,如果302重定向的次數(shù)超過(guò)限制的次數(shù),則瀏覽器會(huì)進(jìn)行報(bào)錯(cuò)處理,如輸出404錯(cuò)誤。此時(shí),業(yè)務(wù)將無(wú)法繼續(xù)進(jìn)行,即業(yè)務(wù)將發(fā)生中斷,從而影響用戶的業(yè)務(wù)體驗(yàn)。
【發(fā)明內(nèi)容】
[0004]本申請(qǐng)實(shí)施例提供一種處理連續(xù)重定向的方法和裝置,可避免重定向中重定向的次數(shù)超過(guò)限制的次數(shù)導(dǎo)致的報(bào)錯(cuò)處理。
[0005]本申請(qǐng)實(shí)施例提供一種處理連續(xù)重定向的方法,包括:
[0006]在接收到需要進(jìn)行重定向處理的業(yè)務(wù)請(qǐng)求時(shí),確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的重定向次數(shù),并判斷所述重定向次數(shù)是否達(dá)到預(yù)設(shè)閾值;
[0007]如果是,則中斷所述業(yè)務(wù)請(qǐng)求的重定向,并在中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址;
[0008]如果否,則將所述業(yè)務(wù)請(qǐng)求重定向到目的地址。
[0009]所述中斷所述業(yè)務(wù)請(qǐng)求的重定向,并在中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址的過(guò)程,具體包括:
[0010]臨時(shí)插入中間頁(yè)面,以通過(guò)插入所述中間頁(yè)面中斷所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的連續(xù)重定向;在通過(guò)插入所述中間頁(yè)面中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址。
[0011]所述中間頁(yè)面的超文本標(biāo)記語(yǔ)言HTML的頭head中包括了用于實(shí)現(xiàn)在插入所述中間頁(yè)面之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址的預(yù)設(shè)指令。
[0012]所述中斷所述業(yè)務(wù)請(qǐng)求的重定向,并在中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址的過(guò)程,具體包括:
[0013]調(diào)用連續(xù)302重定向方法池內(nèi)配置的中斷方式,并通過(guò)所述中斷方式中斷所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的連續(xù)重定向;在通過(guò)所述中斷方式中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址;其中,所述連續(xù)302重定向方法池內(nèi)配置了用于中斷業(yè)務(wù)請(qǐng)求的重定向的中斷方式。
[0014]所述方法進(jìn)一步包括:在內(nèi)存中存儲(chǔ)業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí)與重定向次數(shù)之間的對(duì)應(yīng)關(guān)系;其中,所述重定向次數(shù)的初始值為O ;
[0015]每次將業(yè)務(wù)請(qǐng)求重定向到目的地址時(shí),確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí),并在內(nèi)存中將所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù)加I ;
[0016]在中斷業(yè)務(wù)請(qǐng)求的重定向時(shí),確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí),并在內(nèi)存中將所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù)清零。
[0017]所述方法進(jìn)一步包括:當(dāng)所述重定向次數(shù)未達(dá)到預(yù)設(shè)閾值時(shí),如果有業(yè)務(wù)請(qǐng)求發(fā)生重定向次數(shù)超過(guò)預(yù)設(shè)閾值導(dǎo)致的報(bào)錯(cuò)處理,則確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí),并在內(nèi)存中查詢所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù);
[0018]將所述預(yù)設(shè)閾值調(diào)整為所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù),并在內(nèi)存中將所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù)清零。
[0019]所述在接收到需要進(jìn)行重定向處理的業(yè)務(wù)請(qǐng)求之前,所述方法進(jìn)一步包括:在將業(yè)務(wù)請(qǐng)求重定向到目的地址的過(guò)程中,攔截所有業(yè)務(wù)請(qǐng)求,以從所有業(yè)務(wù)請(qǐng)求中選擇出需要進(jìn)行重定向處理的業(yè)務(wù)請(qǐng)求。
[0020]所述重定向具體包括302重定向。
[0021]本申請(qǐng)實(shí)施例提供一種重定向處理裝置,所述重定向處理裝置包括:
[0022]確定模塊,用于在接收到需要進(jìn)行重定向處理的業(yè)務(wù)請(qǐng)求時(shí),確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的重定向次數(shù);
[0023]判斷模塊,用于判斷所述重定向次數(shù)是否達(dá)到預(yù)設(shè)閾值;
[0024]處理模塊,用于當(dāng)所述重定向次數(shù)達(dá)到預(yù)設(shè)閾值時(shí),中斷所述業(yè)務(wù)請(qǐng)求的重定向,并在中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址;
[0025]當(dāng)所述重定向次數(shù)未達(dá)到預(yù)設(shè)閾值時(shí),將所述業(yè)務(wù)請(qǐng)求重定向到目的地址。
[0026]所述處理模塊,具體用于臨時(shí)插入中間頁(yè)面,以通過(guò)插入所述中間頁(yè)面中斷所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的連續(xù)重定向;在通過(guò)插入所述中間頁(yè)面中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址。
[0027]所述中間頁(yè)面的超文本標(biāo)記語(yǔ)言HTML的頭head中包括了用于實(shí)現(xiàn)在插入所述中間頁(yè)面之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址的預(yù)設(shè)指令。
[0028]所述處理模塊,具體用于調(diào)用連續(xù)302重定向方法池內(nèi)配置的中斷方式,并通過(guò)所述中斷方式中斷所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的連續(xù)重定向;在通過(guò)所述中斷方式中斷所述業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將所述業(yè)務(wù)請(qǐng)求重定向到目的地址;其中,所述連續(xù)302重定向方法池內(nèi)配置了用于中斷業(yè)務(wù)請(qǐng)求的重定向的中斷方式。
[0029]所述確定模塊,進(jìn)一步用于在內(nèi)存中存儲(chǔ)業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí)與重定向次數(shù)之間的對(duì)應(yīng)關(guān)系;其中,所述重定向次數(shù)的初始值為O ;
[0030]每次將業(yè)務(wù)請(qǐng)求重定向到目的地址時(shí),確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí),并在內(nèi)存中將所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù)加I ;
[0031]在中斷業(yè)務(wù)請(qǐng)求的重定向時(shí),確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí),并在內(nèi)存中將所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù)清零。
[0032]所述確定模塊,進(jìn)一步用于當(dāng)所述重定向次數(shù)未達(dá)到預(yù)設(shè)閾值時(shí),如果有業(yè)務(wù)請(qǐng)求發(fā)生重定向次數(shù)超過(guò)預(yù)設(shè)閾值導(dǎo)致的報(bào)錯(cuò)處理,則確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)標(biāo)識(shí),并在內(nèi)存中查詢所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù);
[0033]將所述預(yù)設(shè)閾值調(diào)整為所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù),并在內(nèi)存中將所述業(yè)務(wù)標(biāo)識(shí)對(duì)應(yīng)的重定向次數(shù)清零。
[0034]所述確定模塊,進(jìn)一步用于在接收到需要進(jìn)行重定向處理的業(yè)務(wù)請(qǐng)求之前,在將業(yè)務(wù)請(qǐng)求重定向到目的地址的過(guò)程中,攔截所有業(yè)務(wù)請(qǐng)求,以從所有業(yè)務(wù)請(qǐng)求中選擇出需要進(jìn)行重定向處理的業(yè)務(wù)請(qǐng)求。
[0035]所述重定向具體包括302重定向。
[0036]本申請(qǐng)實(shí)施例中,在對(duì)業(yè)務(wù)請(qǐng)求進(jìn)行重定向處理之前,重定向處理裝置通過(guò)判斷重定向次數(shù)是否達(dá)到預(yù)設(shè)閾值,并在重定向次數(shù)達(dá)到預(yù)設(shè)閾值時(shí),中斷業(yè)務(wù)請(qǐng)求的重定向,并在中斷業(yè)務(wù)請(qǐng)求的重定向之后,繼續(xù)將業(yè)務(wù)請(qǐng)求重定向到目的地址,從而避免重定向的次數(shù)超過(guò)瀏覽器限制的次數(shù)所導(dǎo)致的報(bào)錯(cuò)處理(如404錯(cuò)誤),繼而避免業(yè)務(wù)發(fā)生中斷以及業(yè)務(wù)失敗,提高業(yè)務(wù)體驗(yàn)和用戶使用感受。
【附圖說(shuō)明】
[0037]為了更加清楚地說(shuō)明本申請(qǐng)實(shí)施例的技術(shù)方案,下面將對(duì)本申請(qǐng)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)本申請(qǐng)實(shí)施例的這些附圖獲得其他的附圖。
[0038]圖1是本申請(qǐng)實(shí)施例一提供的一種處理連續(xù)重定向的方法流程示意圖;
[0039]圖2是本申請(qǐng)實(shí)施例二提供的一種重定向處理裝置的結(jié)構(gòu)示意圖;
[0040]圖3是本申請(qǐng)實(shí)施例二提供的一種處理連續(xù)重定向的方法流程示意圖;
[0041]圖4是本申請(qǐng)實(shí)施例三提供的一種重定向處理裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0042]下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)的一部分實(shí)施例,而不是全部的實(shí)施例。基于本申請(qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
[0043]實(shí)施例一
[0044]針對(duì)現(xiàn)有技術(shù)中存在的問(wèn)題,本申請(qǐng)實(shí)施例一提供的一種處理連續(xù)重定向的方法,應(yīng)用于包括客戶端、服務(wù)器和重定向處理裝置的網(wǎng)絡(luò)中,該網(wǎng)絡(luò)可以為大型網(wǎng)站或者分布式系統(tǒng)。重定向處理裝置可以作為功能模塊部署在服務(wù)器上,重定向處理裝置也可以在網(wǎng)絡(luò)中作為單獨(dú)的設(shè)備。本申請(qǐng)實(shí)施例中,重定向處理裝置用于對(duì)業(yè)務(wù)請(qǐng)求的重定向過(guò)程進(jìn)行處理。例如,客戶端(瀏覽器)向服務(wù)器發(fā)送業(yè)務(wù)請(qǐng)求(即WEB業(yè)務(wù)請(qǐng)求)時(shí),該業(yè)務(wù)請(qǐng)求被發(fā)送至地址A。之后的重定向過(guò)程均由重定向處理裝置進(jìn)行處理,如重定向處理裝置將該業(yè)務(wù)請(qǐng)求重定向到地址B,之后重定向處理裝置將該業(yè)務(wù)請(qǐng)求重定向到地址C,之后重定向處理裝置將該業(yè)務(wù)請(qǐng)求重定向到地址D,以此類(lèi)推。
[0045]在上述應(yīng)用場(chǎng)景下,如圖1所示,處理連續(xù)重定向的方法包括以下