本申請涉及計算機(jī)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)處理方法及系統(tǒng)。
背景技術(shù):
目前,大多數(shù)前端和后端的數(shù)據(jù)傳輸都是通過JSON來完成的,因?yàn)镴SON便于閱讀,機(jī)器容易生成也容易解析。因此,構(gòu)建正確格式的JSON數(shù)據(jù)就十分重要。
我們?nèi)粘T谏暇W(wǎng)瀏覽網(wǎng)頁時,看到的就是各種各樣的漂亮的經(jīng)過組織的數(shù)據(jù)。這些數(shù)據(jù)就是后臺處理后,發(fā)送到前端,然后由前端的框架進(jìn)行組織處理后展現(xiàn)出來。
如果數(shù)據(jù)傳送是JSON格式,而后臺傳過來的數(shù)據(jù)由于一些原因,使數(shù)據(jù)變?yōu)榱藖y碼數(shù)據(jù),這樣前端框架就會無法解析數(shù)據(jù),然后你瀏覽的頁面也不會出現(xiàn)你想要看到的東西了。
而亂碼形成的原因是編碼和解碼不一致。對于機(jī)器來說,沒有什么是亂碼的,因此也不能在后臺處理時對亂碼數(shù)據(jù)進(jìn)行篩選處理。
這種情況對于那些用Web應(yīng)用程序增/刪/改數(shù)據(jù)的操作人員更加常見。如果你在添加用戶信息的時候輸入了一些特殊的字符,導(dǎo)致后臺處理不能正確處理而產(chǎn)生亂碼,或者添加信息時,就添加的亂碼數(shù)據(jù)。這樣,由于數(shù)據(jù)為亂碼,導(dǎo)致Web前端的Jquery框架無法正常解析數(shù)據(jù),也就無法正常顯示。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)處理方法及系統(tǒng),用以解決現(xiàn)有技術(shù)服務(wù)器發(fā)送亂碼數(shù)據(jù)時,前端瀏覽器無法顯示的問題。
其具體的技術(shù)方案如下:
一種數(shù)據(jù)處理方法,所述方法包括:
獲取由服務(wù)器發(fā)送的響應(yīng)數(shù)據(jù);
檢測所述響應(yīng)數(shù)據(jù)中是否存在亂碼數(shù)據(jù);
若存在,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù),并將轉(zhuǎn)換后的數(shù)據(jù)傳輸至前端瀏覽器。
可選的,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù),包括:
提取出所述響應(yīng)數(shù)據(jù)中的所述亂碼數(shù)據(jù);
對所述亂碼數(shù)據(jù)進(jìn)行修改,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。
可選的,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù),包括:
確定所述響應(yīng)數(shù)據(jù)中的亂碼數(shù)據(jù);
在所述響應(yīng)數(shù)據(jù)中刪除所述亂碼數(shù)據(jù),并將刪除了亂碼數(shù)據(jù)的響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。
可選的,在將轉(zhuǎn)換后的數(shù)據(jù)傳輸至前端瀏覽器之后,所述方法還包括:
獲取用戶通過所述前端瀏覽器對所述亂碼數(shù)據(jù)進(jìn)行編輯后的修正數(shù)據(jù);
將所述修正數(shù)據(jù)傳輸至數(shù)據(jù)庫,以使所述數(shù)據(jù)庫根據(jù)所述修改數(shù)據(jù)替換所述亂碼數(shù)據(jù)。
一種數(shù)據(jù)處理系統(tǒng),包括:
獲取模塊,用于獲取由服務(wù)器發(fā)送的響應(yīng)數(shù)據(jù);
處理模塊,用于檢測所述響應(yīng)數(shù)據(jù)中是否存在亂碼數(shù)據(jù);若存在,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù),并將轉(zhuǎn)換后的數(shù)據(jù)傳輸至前端瀏覽器。
可選的,所述處理模塊,具體用于提取出所述響應(yīng)數(shù)據(jù)中的所述亂碼數(shù)據(jù);對所述亂碼數(shù)據(jù)進(jìn)行修改,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。
可選的,所述處理模塊,具體用于確定所述響應(yīng)數(shù)據(jù)中的亂碼數(shù)據(jù);在所述響應(yīng)數(shù)據(jù)中刪除所述亂碼數(shù)據(jù),并將刪除了亂碼數(shù)據(jù)的響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。
可選的,所述處理模塊,還用于獲取用戶通過所述前端瀏覽器對所述亂碼數(shù)據(jù)進(jìn)行編輯后的修正數(shù)據(jù);將所述修正數(shù)據(jù)傳輸至數(shù)據(jù)庫,以使所述數(shù)據(jù)庫根據(jù)所述修改數(shù)據(jù)替換所述亂碼數(shù)據(jù)。
基于本發(fā)明所提供的技術(shù)方案,可以攔截服務(wù)器發(fā)送的響應(yīng)數(shù)據(jù),并在響應(yīng)數(shù)據(jù)中檢測到亂碼數(shù)據(jù),然后對亂碼數(shù)據(jù)進(jìn)行對應(yīng)處理,從而使得響應(yīng)數(shù)據(jù)能夠滿足指定數(shù)據(jù)格式,并以指定數(shù)據(jù)格式傳輸至前端瀏覽器,從而使得前端瀏覽器能夠正常顯示內(nèi)容。
附圖說明
圖1為本發(fā)明實(shí)施例中一種數(shù)據(jù)處理方法的流程圖;
圖2為現(xiàn)有技術(shù)中前端瀏覽器與服務(wù)器、數(shù)據(jù)庫中的結(jié)構(gòu)關(guān)系圖;
圖3為本發(fā)明實(shí)施例中前端瀏覽器與服務(wù)器、數(shù)據(jù)庫中的結(jié)構(gòu)關(guān)系圖;
圖4為本發(fā)明實(shí)施例中一種數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
本發(fā)明提供了一種數(shù)據(jù)處理方法,該方法可以攔截服務(wù)器發(fā)送的響應(yīng)數(shù)據(jù),并在響應(yīng)數(shù)據(jù)中檢測到亂碼數(shù)據(jù),然后對亂碼數(shù)據(jù)進(jìn)行對應(yīng)處理,從而使得響應(yīng)數(shù)據(jù)能夠滿足指定數(shù)據(jù)格式,并以指定數(shù)據(jù)格式傳輸至前端瀏覽器,從而使得前端瀏覽器能夠正常顯示內(nèi)容,進(jìn)而解決了亂碼數(shù)據(jù)導(dǎo)致前端瀏覽器無法正常顯示的問題。
下面通過附圖以及具體實(shí)施例對本發(fā)明技術(shù)方案做詳細(xì)的說明,應(yīng)當(dāng)理解,本發(fā)明實(shí)施例以及實(shí)施例中的具體技術(shù)特征只是對本發(fā)明技術(shù)方案的說明,而不是限定,在不沖突的情況下,本發(fā)明實(shí)施例以及實(shí)施例中的具體技術(shù)特征可以相互組合。
如圖1所示為本發(fā)明實(shí)施例中一種數(shù)據(jù)處理方法的流程圖,該方法包括:
S101,獲取由服務(wù)器發(fā)送的響應(yīng)數(shù)據(jù);
S102,檢測響應(yīng)數(shù)據(jù)中是否存在亂碼數(shù)據(jù);
若存在,則執(zhí)行S103,若不存在,則執(zhí)行S105。
S103,將響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù),并將轉(zhuǎn)換后的數(shù)據(jù)傳輸至前端瀏覽器;
S104,接收前端瀏覽器發(fā)送修正數(shù)據(jù),并將修正數(shù)據(jù)發(fā)送至服務(wù)器,以使服務(wù)器使用該修改數(shù)據(jù)替換亂碼數(shù)據(jù);
S105,直接將響應(yīng)數(shù)據(jù)傳輸至前端瀏覽器。
具體來講,如圖1所示為現(xiàn)有技術(shù)中前端瀏覽器、服務(wù)器、數(shù)據(jù)庫之間的結(jié)構(gòu)關(guān)系圖,在圖1中,首先是前端服務(wù)器將接收到的數(shù)據(jù)傳輸至服務(wù)器,然后服務(wù)器將數(shù)據(jù)插入到數(shù)據(jù)庫。
在前端瀏覽器發(fā)生請求時,該請求將發(fā)送至服務(wù)器,然后服務(wù)器根據(jù)該請求在數(shù)據(jù)庫中查找出對應(yīng)的數(shù)據(jù),該數(shù)據(jù)為響應(yīng)數(shù)據(jù),最后服務(wù)器將查詢出的響應(yīng)數(shù)據(jù)傳輸至前端瀏覽器,從而前段瀏覽器將基于響應(yīng)數(shù)據(jù)進(jìn)行對應(yīng)的顯示處理。
基于圖1中所示的結(jié)構(gòu)關(guān)系,不管數(shù)據(jù)庫中提供出的響應(yīng)數(shù)據(jù)中是否存在亂碼數(shù)據(jù),服務(wù)器都會直接將該響應(yīng)數(shù)據(jù)發(fā)送至前端瀏覽器。這樣導(dǎo)致亂碼數(shù)據(jù)會直接進(jìn)入到前端瀏覽器,從而導(dǎo)致前端瀏覽器無法正常顯示。
基于上述的問題,在本發(fā)明實(shí)施例中,在前端瀏覽器與服務(wù)器之間添加了Fiddler模塊,此時的結(jié)構(gòu)如圖2所示,在前端瀏覽器與服務(wù)器之間設(shè)置了Fiddler模塊。
首先在Fiddler模塊中設(shè)置斷點(diǎn)功能,設(shè)置對應(yīng)網(wǎng)站的應(yīng)答斷點(diǎn),從而就可以攔截到服務(wù)器返回到瀏覽器的響應(yīng)數(shù)據(jù)。
在設(shè)置好Fiddler模塊中的斷點(diǎn)之后,在運(yùn)行時,F(xiàn)iddler模塊將獲取到服務(wù)器返回給前端瀏覽器的響應(yīng)數(shù)據(jù),然后Fiddler模塊將對該響應(yīng)數(shù)據(jù)進(jìn)行檢測,也就是檢測該響應(yīng)數(shù)據(jù)中是否存在亂碼數(shù)據(jù)。
若是,存在亂碼數(shù)據(jù),則該Fiddler模塊可以按照如下兩種情況來對亂碼數(shù)據(jù)進(jìn)行處理。
情況一:
在Fiddler模塊檢測到響應(yīng)數(shù)據(jù)中存在亂碼數(shù)據(jù)時,將直接在響應(yīng)數(shù)據(jù)中提取出亂碼數(shù)據(jù),然后對亂碼數(shù)據(jù)進(jìn)行修改,此處的修改為現(xiàn)有的修改方法以及模式,此處就不詳細(xì)的進(jìn)行說明。
在修改完成之后,將修改完的響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。這里的指定數(shù)據(jù)格式具體為JSON格式的數(shù)據(jù),這樣的數(shù)據(jù)格式可以使得前端瀏覽器更加容易解析。
情況二:
在Fiddler模塊檢測到響應(yīng)數(shù)據(jù)中存在亂碼數(shù)據(jù)時,將直接在響應(yīng)數(shù)據(jù)中確定出亂碼數(shù)據(jù)位置,然后對亂碼數(shù)據(jù)進(jìn)行刪除處理。
在刪除完成之后,將亂碼數(shù)據(jù)刪除完成后的響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。這里的指定數(shù)據(jù)格式具體為JSON格式的數(shù)據(jù),這樣的數(shù)據(jù)格式可以使得前端瀏覽器更加容易解析。
基于上述兩種情況,就可以將響應(yīng)數(shù)據(jù)中亂碼數(shù)據(jù)處理掉,使得前端瀏覽器接收到響應(yīng)數(shù)據(jù)不會存在亂碼數(shù)據(jù),從而保證了前端瀏覽器的正常顯示。
進(jìn)一步,在本發(fā)明實(shí)施例中,為了使得下次傳輸至服務(wù)器中響應(yīng)數(shù)據(jù)中不再存在亂碼數(shù)據(jù),用戶可以對數(shù)據(jù)庫中的亂碼數(shù)據(jù)進(jìn)行修改或者是刪除。
具體來講,用戶使用瀏覽器發(fā)送修正數(shù)據(jù),前端瀏覽器將該修正數(shù)據(jù)發(fā)送給Fiddler模塊,F(xiàn)iddler模塊將該修正數(shù)據(jù)傳輸至服務(wù)器,從而服務(wù)器根據(jù)該修正數(shù)據(jù)替換原來的亂碼數(shù)據(jù),這樣就使得數(shù)據(jù)庫中的亂碼數(shù)據(jù)會得到及時的處理,保證了數(shù)據(jù)庫中存儲的數(shù)據(jù)的有效性。
基于本發(fā)明實(shí)施例所提供的方法,可以攔截服務(wù)器發(fā)送的響應(yīng)數(shù)據(jù),并在響應(yīng)數(shù)據(jù)中檢測到亂碼數(shù)據(jù),然后對亂碼數(shù)據(jù)進(jìn)行對應(yīng)處理,從而使得響應(yīng)數(shù)據(jù)能夠滿足指定數(shù)據(jù)格式,并以指定數(shù)據(jù)格式傳輸至前端瀏覽器,從而使得前端瀏覽器能夠正常顯示內(nèi)容,進(jìn)而解決了亂碼數(shù)據(jù)導(dǎo)致前端瀏覽器無法正常顯示的問題。
對應(yīng)本發(fā)明實(shí)施例中一種數(shù)據(jù)處理方法,本發(fā)明實(shí)施例中還提供了一種數(shù)據(jù)處理系統(tǒng),如圖4所示為本發(fā)明實(shí)施例中一種數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)示意圖,該系統(tǒng)包括:
獲取模塊401,用于獲取由服務(wù)器發(fā)送的響應(yīng)數(shù)據(jù);
處理模塊402,用于檢測所述響應(yīng)數(shù)據(jù)中是否存在亂碼數(shù)據(jù);若存在,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù),并將轉(zhuǎn)換后的數(shù)據(jù)傳輸至前端瀏覽器。
進(jìn)一步,在本發(fā)明實(shí)施例中,所述處理模塊402,具體用于提取出所述響應(yīng)數(shù)據(jù)中的所述亂碼數(shù)據(jù);對所述亂碼數(shù)據(jù)進(jìn)行修改,將所述響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。
進(jìn)一步,在本發(fā)明實(shí)施例中,所述處理模塊402,具體用于確定所述響應(yīng)數(shù)據(jù)中的亂碼數(shù)據(jù);在所述響應(yīng)數(shù)據(jù)中刪除所述亂碼數(shù)據(jù),并將刪除了亂碼數(shù)據(jù)的響應(yīng)數(shù)據(jù)轉(zhuǎn)換為具有指定數(shù)據(jù)格式的數(shù)據(jù)。
進(jìn)一步,在本發(fā)明實(shí)施例中,所述處理模塊402,還用于獲取用戶通過所述前端瀏覽器對所述亂碼數(shù)據(jù)進(jìn)行編輯后的修正數(shù)據(jù);將所述修正數(shù)據(jù)傳輸至數(shù)據(jù)庫,以使所述數(shù)據(jù)庫根據(jù)所述修改數(shù)據(jù)替換所述亂碼數(shù)據(jù)。
盡管已描述了本申請的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的普通技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本申請范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對本申請進(jìn)行各種改動和變型而不脫離本申請的精神和范圍。這樣,倘若本申請的這些修改和變型屬于本申請權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本申請也意圖包含這些改動和變型在內(nèi)。