一種數(shù)據(jù)的校驗(yàn)方法及瀏覽器、服務(wù)器的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及Web應(yīng)用系統(tǒng)開(kāi)發(fā)的技術(shù)領(lǐng)域,具體涉及一種數(shù)據(jù)的校驗(yàn)方法及瀏覽 器、服務(wù)器。
【背景技術(shù)】
[0002] 目前在Web應(yīng)用系統(tǒng)開(kāi)發(fā)的過(guò)程中,需要對(duì)大量的用戶輸入進(jìn)行校驗(yàn),以保證用 戶輸入的數(shù)據(jù)符合要求的規(guī)范,而目前的用戶輸入校驗(yàn)功能都是在瀏覽器和服務(wù)器分別用 JavaScript和Java語(yǔ)言加以實(shí)現(xiàn),導(dǎo)致這樣的語(yǔ)言只能使用在某個(gè)單獨(dú)的系統(tǒng)里,無(wú)法在 不同的系統(tǒng)中進(jìn)行復(fù)用,同樣JavaScript的代碼也無(wú)法在服務(wù)器進(jìn)行復(fù)用,上述實(shí)現(xiàn)方式 使得校驗(yàn)的邏輯用不同的語(yǔ)言實(shí)現(xiàn),此外校驗(yàn)的邏輯分散在不同的代碼模塊中沒(méi)有統(tǒng)一管 理起來(lái),這些都導(dǎo)致維護(hù)起來(lái)特別麻煩。
[0003] 正是由于前面提到的校驗(yàn)功能開(kāi)發(fā)模式,導(dǎo)致不同的系統(tǒng)都需要針對(duì)校驗(yàn)功能進(jìn) 行個(gè)性化開(kāi)發(fā),由此導(dǎo)致了功能復(fù)用程度低,開(kāi)發(fā)工作繁重,開(kāi)發(fā)效率低,系統(tǒng)故障率高的 問(wèn)題。
【發(fā)明內(nèi)容】
[0004] 針對(duì)現(xiàn)有技術(shù)中的缺陷,本發(fā)明提供一種數(shù)據(jù)的校驗(yàn)方法及瀏覽器、服務(wù)器,解決 了Web應(yīng)用系統(tǒng)校驗(yàn)功能開(kāi)發(fā)效率低、維護(hù)工作量大的問(wèn)題。
[0005] 第一方面,本發(fā)明提供了一種數(shù)據(jù)的校驗(yàn)方法,該方法包括:
[0006] 瀏覽器接收待校驗(yàn)數(shù)據(jù),根據(jù)所述待校驗(yàn)數(shù)據(jù)的類(lèi)型向服務(wù)器發(fā)送獲取校驗(yàn)規(guī)則 的請(qǐng)求,所述請(qǐng)求包括所述待校驗(yàn)數(shù)據(jù)的類(lèi)型;
[0007] 所述瀏覽器接收所述服務(wù)器根據(jù)所述校驗(yàn)規(guī)則的請(qǐng)求發(fā)送的校驗(yàn)規(guī)則,通過(guò)所述 校驗(yàn)規(guī)則對(duì)所述待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn),所述校驗(yàn)規(guī)則為與所述待校驗(yàn)數(shù)據(jù)的類(lèi)型對(duì)應(yīng)的校 驗(yàn)規(guī)則;
[0008] 其中,所述服務(wù)器內(nèi)存儲(chǔ)有根據(jù)所述待校驗(yàn)數(shù)據(jù)類(lèi)型定義的校驗(yàn)規(guī)則。
[0009] 可選的,所述瀏覽器接收所述服務(wù)器根據(jù)所述校驗(yàn)規(guī)則的請(qǐng)求發(fā)送的校驗(yàn)規(guī)則, 包括:
[0010] 所述瀏覽器接收所述服務(wù)器發(fā)送的JS0N文件;
[0011] 所述瀏覽器根據(jù)所述JS0N文件生成校驗(yàn)規(guī)則的JavaScript對(duì)象,獲取所述 JavaScript對(duì)象中的所述校驗(yàn)規(guī)則。
[0012] 其中,所述服務(wù)器發(fā)送的JS0N文件為所述服務(wù)器接收所述瀏覽器向所述服務(wù)器 發(fā)送獲取所述校驗(yàn)規(guī)則的請(qǐng)求之后,根據(jù)所述請(qǐng)求將所述校驗(yàn)規(guī)則的XML文件轉(zhuǎn)換成JS0N 文件。
[0013] 可選的,所述獲取所述JavaScript對(duì)象中的所述校驗(yàn)規(guī)則,并對(duì)所述待校驗(yàn)數(shù)據(jù) 進(jìn)行校驗(yàn)之后,
[0014] 若所述待校驗(yàn)數(shù)據(jù)未通過(guò)所述校驗(yàn)規(guī)則的校驗(yàn),則在所述瀏覽器顯示所述待校驗(yàn) 數(shù)據(jù)未通過(guò)所述校驗(yàn)規(guī)則的提示信息。
[0015] 第二方面,本發(fā)明提供了一種數(shù)據(jù)的校驗(yàn)方法,包括:
[0016] 服務(wù)器接收待校驗(yàn)數(shù)據(jù);
[0017] 所述服務(wù)器根據(jù)所述服務(wù)器內(nèi)存儲(chǔ)的校驗(yàn)規(guī)則對(duì)所述接收的待校驗(yàn)數(shù)據(jù)進(jìn)行校 驗(yàn);
[0018] 其中,所述服務(wù)器內(nèi)存儲(chǔ)的校驗(yàn)規(guī)則為所述服務(wù)器根據(jù)校驗(yàn)數(shù)據(jù)類(lèi)型定義的校驗(yàn) 規(guī)則。
[0019] 可選的,所述服務(wù)器根據(jù)所述服務(wù)器內(nèi)存儲(chǔ)的校驗(yàn)規(guī)則對(duì)所述接收的待校驗(yàn)數(shù)據(jù) 進(jìn)行校驗(yàn),包括:
[0020] 所述服務(wù)器獲取所述待校驗(yàn)數(shù)據(jù),采用服務(wù)器內(nèi)的JavaScript引擎來(lái)執(zhí)行與所 述待校驗(yàn)數(shù)據(jù)對(duì)應(yīng)的校驗(yàn)規(guī)則,對(duì)所述待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn)。
[0021] 可選的,所述對(duì)所述待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn)之后,若所述待校驗(yàn)數(shù)據(jù)未通過(guò)所述校 驗(yàn)規(guī)則的校驗(yàn),則所述服務(wù)器向所述瀏覽器發(fā)送未通過(guò)所述校驗(yàn)規(guī)則的提示信息。
[0022] 第三方面,本發(fā)明提供了一種瀏覽器,包括:
[0023]第一接收模塊,用于接收待校驗(yàn)數(shù)據(jù);
[0024] 請(qǐng)求發(fā)送模塊,用于根據(jù)所述第一接收模塊接收的所述待校驗(yàn)數(shù)據(jù)的類(lèi)型向服務(wù) 器發(fā)送獲取校驗(yàn)規(guī)則的請(qǐng)求,所述請(qǐng)求包括所述待校驗(yàn)數(shù)據(jù)的類(lèi)型;
[0025] 所述第一接收模塊,還用于接收所述服務(wù)器根據(jù)所述校驗(yàn)規(guī)則的請(qǐng)求發(fā)送的校驗(yàn) 規(guī)則;
[0026] 第一數(shù)據(jù)校驗(yàn)?zāi)K,用于采用所述校驗(yàn)規(guī)則對(duì)所述待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn),所述校 驗(yàn)規(guī)則為與所述待校驗(yàn)數(shù)據(jù)的類(lèi)型對(duì)應(yīng)的校驗(yàn)規(guī)則;
[0027] 其中,所述服務(wù)器內(nèi)存儲(chǔ)有根據(jù)所述待校驗(yàn)數(shù)據(jù)類(lèi)型定義的校驗(yàn)規(guī)則。
[0028] 可選的,所述第一數(shù)據(jù)校驗(yàn)?zāi)K包括:
[0029] 校驗(yàn)規(guī)則接收單元,用于接收所述服務(wù)器發(fā)送的JS0N文件;
[0030] 第一校驗(yàn)規(guī)則運(yùn)行單元,用于根據(jù)所述JS0N文件生成校驗(yàn)規(guī)則的JavaScript對(duì) 象,獲取所述JavaScript對(duì)象中的所述校驗(yàn)規(guī)則,并對(duì)所述待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn);
[0031] 其中,所述服務(wù)器發(fā)送的JS0N文件為所述服務(wù)器接收所述瀏覽器向所述服務(wù)器 發(fā)送獲取所述校驗(yàn)規(guī)則的請(qǐng)求之后,根據(jù)所述請(qǐng)求將所述校驗(yàn)規(guī)則的XML文件轉(zhuǎn)換成JS0N 文件。
[0032] 可選的,所述第一校驗(yàn)規(guī)則運(yùn)行單元,還用于:
[0033] 在所述待校驗(yàn)數(shù)據(jù)未通過(guò)所述校驗(yàn)規(guī)則的校驗(yàn)時(shí),則在所述瀏覽器顯示所述待校 驗(yàn)數(shù)據(jù)未通過(guò)所述校驗(yàn)規(guī)則的提示信息。
[0034] 第四方面,本發(fā)明提供了一種服務(wù)器,包括:
[0035]第二接收模塊,用于接收待校驗(yàn)數(shù)據(jù);
[0036] 第二數(shù)據(jù)校驗(yàn)?zāi)K,用于根據(jù)所述服務(wù)器內(nèi)存儲(chǔ)的校驗(yàn)規(guī)則對(duì)所述第二接收模塊 接收的待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn);
[0037] 其中,所述服務(wù)器內(nèi)存儲(chǔ)的校驗(yàn)規(guī)則為所述服務(wù)器根據(jù)校驗(yàn)數(shù)據(jù)類(lèi)型定義的校驗(yàn) 規(guī)則。
[0038] 可選的,所述第二數(shù)據(jù)校驗(yàn)?zāi)K用于:
[0039] 第二校驗(yàn)規(guī)則運(yùn)行單元,用于獲取所述待校驗(yàn)數(shù)據(jù),采用服務(wù)器內(nèi)的JavaScript 引擎來(lái)執(zhí)行與所述待校驗(yàn)數(shù)據(jù)對(duì)應(yīng)的校驗(yàn)規(guī)則,對(duì)所述待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn)。
[0040] 可選的,所述第二校驗(yàn)規(guī)則運(yùn)行單元,還用于:
[0041] 在所述待校驗(yàn)數(shù)據(jù)未通過(guò)所述校驗(yàn)規(guī)則的校驗(yàn)時(shí),則所述服務(wù)器向所述瀏覽器發(fā) 送未通過(guò)所述校驗(yàn)規(guī)則的提示信息。由上述技術(shù)方案可知,本發(fā)明提供了一種數(shù)據(jù)的校驗(yàn) 方法及瀏覽器、服務(wù)器,該方法通過(guò)在服務(wù)器端定義和存儲(chǔ)待校驗(yàn)數(shù)據(jù)的校驗(yàn)規(guī)則,瀏覽器 和服務(wù)器通過(guò)該校驗(yàn)規(guī)則對(duì)待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn),當(dāng)對(duì)于不同類(lèi)型的校驗(yàn)數(shù)據(jù)需要校驗(yàn) 時(shí),只需要更改服務(wù)器中的校驗(yàn)規(guī)則就可以實(shí)現(xiàn)對(duì)待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn),無(wú)需修改瀏覽器 和服務(wù)器中的代碼,該方法提高了校驗(yàn)功能的開(kāi)發(fā)效率,降低了系統(tǒng)維護(hù)的工作量。
【附圖說(shuō)明】
[0042] 圖1為本發(fā)明一實(shí)施例提供的數(shù)據(jù)在瀏覽器的校驗(yàn)方法的流程圖;
[0043] 圖2為本發(fā)明另一實(shí)施例提供的數(shù)據(jù)在瀏覽器的校驗(yàn)過(guò)程示意圖;
[0044] 圖3為本發(fā)明另一實(shí)施例提供的數(shù)據(jù)在服務(wù)器的校驗(yàn)方法的流程圖;
[0045] 圖4為本發(fā)明另一實(shí)施例提供的數(shù)據(jù)在服務(wù)器的校驗(yàn)過(guò)程示意圖;
[0046] 圖5為本發(fā)明另一實(shí)施例提供的瀏覽器的結(jié)構(gòu)示意圖;
[0047] 圖6為本發(fā)明另一實(shí)施例提供的服務(wù)器的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0048] 下面結(jié)合附圖,對(duì)發(fā)明的【具體實(shí)施方式】作進(jìn)一步描述。以下實(shí)施例僅用于更加清 楚地說(shuō)明本發(fā)明的技術(shù)方案,而不能以此來(lái)限制本發(fā)明的保護(hù)范圍。
[0049] 圖1示出了本實(shí)施例提供的一種數(shù)據(jù)的校驗(yàn)方法,該校驗(yàn)方法包括以下步驟:
[0050] S101、瀏覽器接收待校驗(yàn)數(shù)據(jù),根據(jù)所述待校驗(yàn)數(shù)據(jù)的類(lèi)型向服務(wù)器發(fā)送獲取校 驗(yàn)規(guī)則的請(qǐng)求,所述請(qǐng)求包括所述待校驗(yàn)數(shù)據(jù)的類(lèi)型;
[0051] 舉例來(lái)說(shuō),上述校驗(yàn)規(guī)則包括必須滿足的強(qiáng)制性校驗(yàn)規(guī)則、可選的提示性校驗(yàn)規(guī) 則以及校驗(yàn)的規(guī)則的具體內(nèi)容等。
[0052] 在具體應(yīng)用中,上述校驗(yàn)規(guī)則主要是根據(jù)所述待校驗(yàn)數(shù)據(jù)類(lèi)型定義的校驗(yàn)規(guī)則并 存儲(chǔ)在服務(wù)器內(nèi),其中,上述待校驗(yàn)數(shù)據(jù)可以為員工工資表的核對(duì)校驗(yàn)、政府的財(cái)政支出校 驗(yàn)等類(lèi)型。
[0053] S102、所述瀏覽器接收所述服務(wù)器根據(jù)所述校驗(yàn)規(guī)則的請(qǐng)求發(fā)送的校驗(yàn)規(guī)則,通 過(guò)所述校驗(yàn)規(guī)則對(duì)所述待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn),所述校驗(yàn)規(guī)則為與所述待校驗(yàn)數(shù)據(jù)的類(lèi)型對(duì) 應(yīng)的校驗(yàn)規(guī)則;
[0054] 上述方法通過(guò)在服務(wù)器端定義和存儲(chǔ)待校驗(yàn)數(shù)據(jù)的校驗(yàn)規(guī)則,瀏覽器通過(guò)該校驗(yàn) 規(guī)則對(duì)待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn),當(dāng)對(duì)于不同類(lèi)型的校驗(yàn)數(shù)據(jù)需要校驗(yàn)時(shí),只需要更改服務(wù)器 中的校驗(yàn)規(guī)則就可以實(shí)現(xiàn)對(duì)待校驗(yàn)數(shù)據(jù)進(jìn)行校驗(yàn),無(wú)需修改瀏覽器中的代碼,該方法提高 了校驗(yàn)功能的開(kāi)發(fā)效率,降低了系統(tǒng)維護(hù)