新四季網

網頁應用的數據處理方法和裝置與流程

2023-10-05 03:11:44 5


本申請涉及網際網路領域,具體而言,涉及一種網頁應用的數據處理方法和裝置。



背景技術:

在當前很多網頁應用(即web應用)中前後臺的數據交互都是使用json格式的數據,如圖1所示,常規的web應用前後臺交互可以通過如下步驟實現:

步驟s101:前端接收用戶輸入。

步驟s102:前端基於用戶輸入生成json對象,並向後臺發送請求。

其中,該請求可以為查詢請求,該json對象攜帶在請求中。

步驟s103:後臺(如伺服器)對數據進行解析,得到解析結果。

步驟s104:後臺按照解析結果處理對應的後臺業務。

步驟s105:處理後臺業務完成將處理結果反饋。

但是,在開發dmsformongodb的時候,客戶端頁面接受用戶輸入的信息之後,將輸入的信息按照bson格式傳輸(即mongodb中的數據類型)的時候,bson超過了伺服器端的處理範疇,例如,用戶輸入下述數據:

{id:」123」,date:isodate,

"timestamp":timestamp(1445571810,1),

"minkey":minkey,

"maxkey":maxkey}

上述數據由於屬性超過了json的範疇,導致數據無法在前端和後臺進行傳輸。

另外,在mongodb自帶的導入導出格式中採用冗餘欄位,並且mongodb規定數據的key不可以以$開頭,例如,傳輸一個minkey類型的數據是,不可以將{$minkey:1}作為一個minkey的數據。這種辦法的缺點非常明顯,一是欄位的冗餘直接加深了文檔的層次,二是不具備通用性,他能傳遞bson數據的前提是mongodb人為規定了普通數 據的key不能以$開頭,也就是他甚至無法傳遞{$haha:」haha」}這樣的簡單數據。

針對上述bson數據無法在前後臺進行傳輸的問題,目前尚未提出有效的解決方案。



技術實現要素:

本申請實施例提供了一種網頁應用的數據處理方法和裝置,以至少解決bson數據無法在前後臺進行傳輸的技術問題。

根據本申請實施例的一個方面,提供了一種網頁應用的數據處理方法,該方法包括:網頁應用的前端通過接收的第一信息生成第一對象,其中,所述第一對象的數據傳輸格式與所述網頁應用的伺服器的傳輸格式不匹配;所述網頁應用的前端按照預先獲取的轉換信息,轉換所述第一對象的數據傳輸格式得到第二對象,其中,所述第二對象的數據傳輸格式與所述伺服器的傳輸格式匹配;所述網頁應用的前端將所述第二對象發送至所述伺服器。

根據本申請實施例的另一方面,還提供了一種網頁應用的數據處理方法,該方法包括:伺服器接收網頁應用的前端發送的第二對象,其中,所述第二對象的數據傳輸格式與所述伺服器的傳輸格式相匹配;所述伺服器按照預先獲取的轉換信息,解析所述第二對象,得到所述第二對象攜帶的第一信息。

根據本申請實施例的另一方面,還提供了一種網頁應用的數據處理裝置,該裝置設置在網頁應用的前端,包括:接收單元,用於通過接收的第一信息生成第一對象,其中,所述第一對象的數據傳輸格式與所述網頁應用的伺服器的傳輸格式不匹配;轉換單元,用於按照預先獲取的轉換信息,轉換所述第一對象的數據傳輸格式得到第二對象,其中,所述第二對象的數據傳輸格式與所述伺服器的傳輸格式匹配;發送單元,用於將所述第二對象發送至所述伺服器。

根據本申請實施例的另一方面,還提供了一種網頁應用的數據處理裝置,該裝置設置在網頁應用的伺服器上,包括:接收單元,用於接收網頁應用的前端發送的第二對象,其中,所述第二對象的數據傳輸格式與所述伺服器的傳輸格式相匹配;處理單元,用於所述伺服器按照預先獲取的轉換信息,解析所述第二對象,得到所述第二對象攜帶的第一信息。

採用本申請上述實施例,在前端基於接收的第一信息生成第一對象之後,轉換第一對象的數據傳輸格式,將其數據傳輸格式轉換為伺服器的傳輸格式,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可 以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

附圖說明

此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在附圖中:

圖1是根據現有技術中web頁面前後臺交互的交互示意圖;

圖2是本申請實施例的一種網頁應用的數據處理方法的計算機終端的硬體結構框圖;

圖3是根據本申請實施例的一種可選的網頁應用的數據處理方法的流程圖;

圖4是根據本申請實施例的一種可選的網頁應用前後臺交互的示意圖;

圖5是根據本申請實施例的一種可選的網頁應用的數據處理方法的流程圖;

圖6是根據本申請實施例的一種可選的網頁應用的數據處理方法的流程圖;

圖7是根據本申請實施例的一種可選的網頁應用的數據處理裝置的示意圖;

圖8是根據本申請實施例的一種可選的網頁應用的數據處理裝置的示意圖二;

圖9是根據本申請實施例的一種可選的網頁應用的數據處理裝置的示意圖三四;

圖10是根據本申請實施例的一種計算機終端的結構框圖。

具體實施方式

為了使本技術領域的人員更好地理解本申請方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分的實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本申請保護的範圍。

需要說明的是,本申請的說明書和權利要求書及上述附圖中的術語「第一」、「第二」等是用於區別類似的對象,而不必用於描述特定的順序或先後次序。應該理解這樣使用的數據在適當情況下可以互換,以便這裡描述的本申請的實施例能夠以除了在這裡圖示或描述的那些以外的順序實施。此外,術語「包括」和「具有」以及他們的 任何變形,意圖在於覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限於清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對於這些過程、方法、產品或設備固有的其它步驟或單元。

首先,對本申請涉及的術語解釋如下:

mongodb:分布式文檔存儲資料庫,可以為web應用(即網頁應用)提供可擴展的高性能數據存儲解決方案。該資料庫支持的數據結構是bson格式,具體地,mongodb使用bson這種結構來存儲數據和網絡數據交換。

bson:是一種類json的二進位形式的存儲格式,簡稱binaryjson,它和json一樣,支持內嵌的文檔對象和數組對象,但是bson有json沒有的一些數據類型,如date和bindata類型,其中,date類型是日期類型,bindata是二進位類型。

json,即javascriptobjectnotation,是一種輕量級的數據交換格式。json採用完全獨立於語言的文本格式,但是也使用了類似於c語言家族的習慣(包括c、c++、c#、java、javascript、perl、python等)。

實施例1

根據本申請實施例,還提供了一種網頁應用的數據處理方法的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執行指令的計算機系統中執行,並且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟。

本申請實施例一所提供的方法實施例可以在移動終端、計算機終端或者類似的運算裝置中執行。以運行在計算機終端上為例,圖2是本申請實施例的一種網頁應用的數據處理方法的計算機終端的硬體結構框圖。如圖2所示,計算機終端10可以包括一個或多個(圖中僅示出一個)處理器102(處理器102可以包括但不限於微處理器mcu或可編程邏輯器件fpga等的處理裝置)、用於存儲數據的存儲器104、以及用於通信功能的傳輸模塊106。本領域普通技術人員可以理解,圖2所示的結構僅為示意,其並不對上述電子裝置的結構造成限定。例如,計算機終端10還可包括比圖2中所示更多或者更少的組件,或者具有與圖2所示不同的配置。

存儲器104可用於存儲應用軟體的軟體程序以及模塊,如本申請實施例中的網頁應用的數據處理方法對應的程序指令/模塊,處理器102通過運行存儲在存儲器104內的軟體程序以及模塊,從而執行各種功能應用以及數據處理,即實現上述的網頁應用的數據處理方法。存儲器104可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、快閃記憶體、或者其他非易失性固態存儲器。在一些實例中, 存儲器104可進一步包括相對於處理器102遠程設置的存儲器,這些遠程存儲器可以通過網絡連接至計算機終端10。上述網絡的實例包括但不限於網際網路、企業內部網、區域網、移動通信網及其組合。

傳輸裝置106用於經由一個網絡接收或者發送數據。上述的網絡具體實例可包括計算機終端10的通信供應商提供的無線網絡。在一個實例中,傳輸裝置106包括一個網絡適配器(networkinterfacecontroller,nic),其可通過基站與其他網絡設備相連從而可與網際網路進行通訊。在一個實例中,傳輸裝置106可以為射頻(radiofrequency,rf)模塊,其用於通過無線方式與網際網路進行通訊。

在上述運行環境下,本申請提供了如圖3所示的網頁應用的數據處理方法。圖3是根據本申請實施例的一種可選的網頁應用的數據處理方法的流程圖。

步驟s302:網頁應用的前端通過接收的第一信息生成第一對象,其中,第一對象的數據傳輸格式與網頁應用的伺服器的傳輸格式不匹配,該網頁應用可以為web應用,web應用為可以通過web訪問的應用程式,即通過用戶瀏覽器上執行的程序。該網頁應用的前端可以為安裝該瀏覽器的終端,用戶可以在該終端上輸入第一信息;網頁應用的伺服器(或後臺)用於處理該第一信息。

步驟s304:網頁應用的前端按照預先獲取的轉換信息,轉換第一對象的數據傳輸格式得到第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式匹配;

步驟s306:網頁應用的前端將第二對象發送至伺服器。

採用本申請上述實施例,在前端基於接收的第一信息生成第一對象之後,轉換第一對象的數據傳輸格式,將其數據傳輸格式轉換為伺服器的傳輸格式,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

上述實施例中的網頁應用可以為分布式文檔存儲資料庫mongodb的網頁應用,用戶可以通過該網頁應用的前端輸入查詢請求,以查詢該mongodb內的數據。

上述實施例中的第一對象可以為分布式文檔存儲資料庫mongodb的bson對象,第二對象可以為允許被伺服器解析的json對象。該預先獲取的轉換信息可以為預先設置的轉換協議或通訊協議,該轉換信息中記錄有bson對象的對象類型對應的類型格式。

下面結合圖4對本申請上述實施例進行詳細描述。

如圖4所示,採用本申請實施例,分布式文檔存儲資料庫mongodb的網頁前端可與後臺進行交互,具體地可以通過如下方式進行交互:

步驟s401:網頁應用的前端接收用戶輸入的第一信息。

其中,第一信息可以為查詢分布式文檔存儲資料庫mongodb中數據的查詢信息。

步驟s402:網頁應用的前端基於第一信息生成bson對象。

步驟s403:網頁應用的前端將bson對象按照預先獲取的轉換信息轉換為json對象。

其中,可以按照預先獲取的轉換協議,將bson對象的對象類型的格式轉換為對應的類型格式。

步驟s404:網頁應用的前端將json對象發送至後臺伺服器。

步驟s405:後臺伺服器按照預先獲取的轉換信息,對json對象進行解析。

具體地,後臺伺服器按照json對象的解析方式對json對象進行解析,得到json對象的值,然後按照預先獲取的轉換信息對json對象的值進行轉換,得到攜帶在json對象中的第一信息。

步驟s406:後臺伺服器執行第一信息指示的後臺業務,得到執行結果。

其中,第一信息指示的後臺業務可以為存儲、更新或者查詢等業務,本申請對此不做限定。

步驟s407:後臺伺服器按照預先獲取的轉換信息將執行結果轉換為第三對象。

其中,第三對象的數據傳輸格式符合分布式文檔存儲資料庫mongodb的網頁應用的前端的傳輸格式。

步驟s408:後臺伺服器將第三對象返回至前端。

通過本申請的上述實施例,可以實現bson格式的數據在前端和後臺之間的通訊,採用該方式高效、完整地在前端和後端傳輸bson格式的數據。

根據本申請的上述實施例,網頁應用的前端按照預先獲取的轉換信息,轉換第一對象的數據傳輸格式得到第二對象可以包括:前端查詢預先獲取的轉換信息中,與對象類型對應的類型格式,其中,預先獲取的轉換信息中記錄有對象類型與類型格式的對應關係;在查詢到與對象類型對應的類型格式的情況下,前端將第一對象的數據傳輸格式轉換為類型格式,得到第二對象。

具體地,在前端將第一對象的數據傳輸格式轉換為類型格式之前,方法還包括:前端判斷對象類型的數據傳輸格式是否與伺服器的傳輸格式相匹配;前端將第一對象轉換的數據格式轉換為類型格式包括:若對象類型的數據傳輸格式與伺服器的傳輸格式不匹配,則將第一對象的數據傳輸格式轉換為類型格式。

由於bson是一種類json的二進位形式的存儲格式,bson有json沒有的一些數據類型,如date和bindata類型,其中,date類型是日期類型,bindata是二進位類型;同理,bson也有json有的一些數據類型,如null類型。通過上述實施例,採用簡單的數據冗餘來區分各個bson類型,並不會加深文檔結構,並且上述實施例,適用任何bson數據的傳遞,進一步地,上述實施例中,提供的僅將bson有的且json沒有的一些數據類型進行格式轉換的方案,可以避免對bson有且json也有的一些數據類型進行無效處理,從而減少了處理器的處理量,提高了處理速度。

具體地,如表1所示的轉換信息中可以記錄:對象類型和轉換格式之間的對應關係。

表1

如表1所示,若對象類型為binary二進位類型,則將格式轉換為bindata(1,asdasaaaa),其中,該類型格式中的第一個字符串「1」表示二進位數據的類型,第二個字符串「asdasaaaa」表示是對二進位數據base64編碼之後得到的字符串,其中的「」不屬於字符串。

在表1中,double表示雙精度浮點型定義類型,是表示實型變量的一種變量類型;string表示字符串,具體地,最外層由兩個雙引號包裹,其中為了後臺調用fastjson解析時候能夠正常解析,需要打上\字符,本文所有的文字都是轉義之前的,程序中需要轉義(即」\」content\」」在程序中作為字符串書寫的時候是」\\\」content\\\」」),其中,fastjson是用來解析json類型數據的工具。

上述表1中的undefined類型為在高級程序設計語言設計應用程式時,用於指示變量尚未用單等號進行賦值,其對應的類型格式為:objectid對象idobjectid(2184129hj);boolean數據類型,boolean變量存儲為8位(1個字節)的數值形式,但只能是true或是false,其對應的類型格式為:true/false;date類型:日期類型,其對應的類型格式為:isodate(xxxxxxx),其中的「xxxxxxx」為日期,如19860123;regexp正則表達式類型,其對應的類型格式為:regexp(pattern,attr);javascriptjavascript是一種動態類型、弱類型、基於原型的語言,內置支持類型,其對應的類型格式為:function{vara=\『123\』+\」haha\」};symbol(deprecate)符號(反對),其對應的類型格式為:symbol(asfae),其中,中間的特殊字符需要前端轉義,特殊字符如:「\-->\\」、「'-->\'」、以及「"-->\"」等,其中的「」不是特殊字符的組成部分。另外,32-bitinteger32位整數類型對應的類型格式為:numberint(123),其中的123為具體數值,64-bitinteger64位整數類型對應的類型格式為numberlong(123),其中的123為具體數值。timestamp時間標識類型,對應的類型格式為:timestamp(2738,1),其中的,類型格式中的第二個參數是一秒鐘數幾下,第一個參數是距離1970年多少下。

需要說明的是,表1中示出的minkey和maxkey類型的數據,無需做格外的轉換。

上述表1是一種可選的轉換信息的表現方式,但本申請不限於該表1的表現形式。

可選地,第一對象為bson對象,轉換第一對象的數據傳輸格式得到第二對象包括:將bson對象轉換為對應的json對象,得到json字符串,其中,json對象為第二對象。

在一個可選的實施例中,在於生成bson對象之後,將bson對象轉換為對應的json字符串,按照json字符串的形式進行前端和後臺的通信,然後在後臺將其按照協議進行解析。

在另一個實現方式中,可以將bson對象按照對應的類型格式進行轉換,轉換格式之後,將轉換格式之後的json對象按照json字符串的形式進行前端和後臺的通信。

轉換協議詳細說明如下:

在將前端的bson格式數據轉換為json對象的過程中:

bsonobject對象:{「ch」:」\」easd\」」}就是子文檔,和jsonobject一樣,被大括號包裹。

bsonarray陣列:[a,b,c,d]和jsonarray一樣,被中括號包裹。

上面這兩種情況都可以被用來解析json類型數據的工具fastjson處理,這種類型的bson對象與普通的json對象沒有什麼區別,在判斷出,bson對象的類型格式與伺服器可以接收並解析的json對象的格式一致時,可以不對其進行格式轉換。

在該實施例中,若bson對象的類型格式與伺服器的傳輸格式(和/解析格式)不一致時,按照預先獲取的轉換信息進行格式轉換,將bson對象的數據傳輸格式轉換為對應的類型格式,並在傳輸過程中當作jsonstring進行傳輸,伺服器接收到該jsonstring之後,在後臺再對應進行解析)。

因為是按照jsonstring的形式進行傳輸,所以全部數據類型最外層都套一層」」(雙引號),從而後臺首先進行json解析的時候能夠當成字符串在後臺進行解析,進而可以根據上述的轉換信息對json的值進行而分析出不同的bson類型。

根據本申請的上述實施例,在網頁應用的前端將第二對象發送至伺服器之後,方法還包括:網頁應用的前端接收伺服器返回的第三對象,其中,第三對象中包括伺服器執行第二對象得到的第二信息,第三對象的數據傳輸格式符合網頁應用的客戶端的傳輸格式。

可選地,網頁應用為分布式文檔存儲資料庫的網頁應用。

其中,第三對象的數據傳輸格式符合分布式文檔存儲資料庫mongodb的網頁應用 的前端的傳輸格式。

具體地,後臺伺服器轉換執行結果,可以按照轉換信息中記錄的對象類型對應的類型標識進行轉換,得到最終的數據結構是:

將通過上述轉換得到的結果按照字符串的形式進行傳輸,如,這個數據結構通過fastjson進行轉換成字符串之後會發往前端。

需要說明的是,對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請並不受所描述的動作順序的限制,因為依據本申請,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模塊並不一定是本申請所必須的。

通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到根據上述實施例的方法可藉助軟體加必需的通用硬體平臺的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質(如rom/ram、磁碟、光碟)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,伺服器,或者網絡設備等)執行本申請各個實施例所述的方法。

實施例2

根據本申請實施例,還提供了一種運行在硬體框圖中的網頁應用的數據處理方法,如圖5所示,該方法包括:

步驟s501:伺服器接收網頁應用的前端發送的第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式相匹配;

步驟s503:伺服器按照預先獲取的轉換信息,解析第二對象,得到第二對象攜帶的第一信息。

採用本申請上述實施例,伺服器接收前端發送的與伺服器的傳輸格式相匹配的第 二對象,在接收到第二對象之後,解析第二對象,得到第二對象攜帶的第一信息,在該實施例中,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

上述實施例中的網頁應用可以為分布式文檔存儲資料庫mongodb的網頁應用,用戶可以通過該網頁應用的前端輸入查詢請求,以查詢該mongodb內的數據。

上述實施例中的第一對象可以為分布式文檔存儲資料庫mongodb的bson對象,第二對象可以為允許被伺服器解析的json對象。該預先獲取的轉換信息可以為預先設置的轉換協議或通訊協議,該轉換信息中記錄有bson對象的對象類型對應的類型格式。

根據本申請的上述實施例,在得到第二對象攜帶的第一信息之後,方法還可以包括:伺服器執行第一信息指示的操作,得到第二信息;按照預先獲取的轉換信息,將第二信息生成第三對象,其中,第三對象的數據傳輸格式與網頁應用的前端的傳輸格式相匹配;發送第三對象至網頁應用的前端。

具體地,伺服器按照預先獲取的轉換信息,解析第二對象,得到第二對象攜帶的第一信息包括:伺服器將第二對象作為字符串,確定第二對象的值;在預先獲取的轉換信息中,伺服器查詢第二對象的值所屬的類型格式;在查詢到第二對象的值所屬的類型格式的情況下,伺服器按照類型格式解析第二對象中攜帶的第一信息。

如圖6所示,該實施例可以通過如下步驟實現:

步驟s601:網頁應用的前端接收用戶輸入的第一信息。

其中,第一信息可以為查詢分布式文檔存儲資料庫mongodb中數據的查詢信息。

步驟s602:網頁應用的前端基於第一信息生成bson對象。

步驟s603:網頁應用的前端將bson對象按照預先獲取的轉換信息轉換為json對象。

其中,可以按照預先獲取的轉換協議,將bson對象的對象類型的格式轉換為對應的類型格式。

步驟s604:網頁應用的前端將json對象發送至後臺伺服器。

上述步驟s601至步驟s604與上述實施例1中對應步驟的實現方法一致,在此不 再贅述。

步驟s605:後臺伺服器按照預先獲取的轉換信息,對json對象進行解析。

具體地,後臺伺服器將接收到的第二對象(json對象)作為字符串進行解析,獲取該json對象對應的值,在獲取json對象的值之後,可以從預先獲取的轉換信息查找到該json對象的值對應的類型格式,按照類型格式對其進行解析,具體的解析方式參見上述對於表1的描述,得到攜帶在json對象中的第一信息。

步驟s606:後臺伺服器執行第一信息指示的後臺業務,得到執行結果。

其中,第一信息指示的後臺業務可以為存儲、更新或者查詢等業務,本申請對此不做限定。

步驟s607:後臺伺服器按照預先獲取的轉換信息將執行結果(對應上述的第二信息)轉換為第三對象。

其中,第三對象的數據傳輸格式符合分布式文檔存儲資料庫mongodb的網頁應用的前端的傳輸格式。

具體地,後臺伺服器轉換執行結果,得到最終的數據結構是

這個數據結構通過fastjson進行轉換成字符串之後會發往前端。

步驟s608:後臺伺服器將第三對象返回至前端。

通過本申請的上述實施例,可以實現bson格式的數據在前端和後臺之間的通訊,採用該方式高效、完整地在前端和後端傳輸bson格式的數據。

可選地,上述實施例中的網頁應用為分布式文檔存儲資料庫的網頁應用。

需要說明的是,對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請並不受所描述的動作順序的限制,因為依據本申請,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模塊並不一定是本申請所必須的。

實施例3

根據本申請實施例,還提供了一種用於實施上述網頁應用的數據處理方法的網頁應用的數據處理裝置,如圖7所示,該裝置設置在網頁應用的前端,包括:接收單元71、轉換單元73和發送單元75。

其中,接收單元用於通過接收的第一信息生成第一對象,其中,第一對象的數據傳輸格式與網頁應用的伺服器的傳輸格式不匹配;

轉換單元用於按照預先獲取的轉換信息,轉換第一對象的數據傳輸格式得到第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式匹配;

發送單元用於將第二對象發送至伺服器。

採用本申請上述實施例,在前端基於接收的第一信息生成第一對象之後,轉換第一對象的數據傳輸格式,將其數據傳輸格式轉換為伺服器的傳輸格式,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

上述實施例中的網頁應用可以為分布式文檔存儲資料庫mongodb的網頁應用,用戶可以通過該網頁應用的前端輸入查詢請求,以查詢該mongodb內的數據。

上述實施例中的第一對象可以為分布式文檔存儲資料庫mongodb的bson對象,第二對象可以為允許被伺服器解析的json對象。該預先獲取的轉換信息可以為預先設置的轉換協議或通訊協議,該轉換信息中記錄有bson對象的對象類型對應的類型格式。

其中,後臺伺服器可以按照json對象的解析方式對json對象進行解析,得到json對象的值,然後按照預先獲取的轉換信息對json對象的值進行轉換,得到攜帶在json對象中的第一信息。

通過本申請的上述實施例,可以實現bson格式的數據在前端和後臺之間的通訊,採用該方式高效、完整地在前端和後端傳輸bson格式的數據。

根據本申請的上述實施例,轉換單元包括:查詢模塊,用於查詢預先獲取的轉換信息中,與對象類型對應的類型格式,其中,預先獲取的轉換信息中記錄有對象類型與類型格式的對應關係;轉換模塊,用於在查詢到與對象類型對應的類型格式的情況下,將第一對象的數據傳輸格式轉換為類型格式,得到第二對象。

具體地,裝置還包括如圖8所示的判斷單元81,用於在前端將第一對象的數據傳輸格式轉換為類型格式之前,前端判斷對象類型的數據傳輸格式是否與伺服器的傳輸格式相匹配。

轉換模塊包括:若對象類型的數據傳輸格式與伺服器的傳輸格式不匹配,則將第一對象的數據傳輸格式轉換為類型格式。

由於bson是一種類json的二進位形式的存儲格式,bson有json沒有的一些數據類型,如date和bindata類型,其中,date類型是日期類型,bindata是二進位類型;同理,bson也有json有的一些數據類型,如null類型。通過上述實施例,採用簡單的數據冗餘來區分各個bson類型,並不會加深文檔結構,並且上述實施例,適用任何bson數據的傳遞,進一步地,上述實施例中,提供的僅將bson有的且json沒有的一些數據類型進行格式轉換的方案,可以避免對bson有且json也有的一些數據類型進行無效處理,從而減少了處理器的處理量,提高了處理速度。

可選地,第一對象為bson對象,轉換單元包括:對象轉換模塊,用於將bson對象轉換為對應的json對象,得到json字符串,其中,json對象為第二對象。

在一個可選的實施例中,在於生成bson對象之後,將bson對象轉換為對應的json字符串,按照json字符串的形式進行前端和後臺的通信,然後在後臺將其按照協議進行解析。

在另一個實現方式中,可以將bson對象按照對應的類型格式進行轉換,轉換格式之後,將轉換格式之後的json對象按照json字符串的形式進行前端和後臺的通信。

轉換協議詳細說明如下:

在將前端的bson格式數據轉換為json對象的過程中:

bsonobject對象:{「ch」:」\」easd\」」}就是子文檔,和jsonobject一樣,被大括號包裹。

bsonarray陣列:[a,b,c,d]和jsonarray一樣,被中括號包裹。

上面這兩種情況都可以被用來解析json類型數據的工具fastjson處理,這種類型的bson對象與普通的json對象沒有什麼區別,在判斷出,bson對象的類型格式與伺服器可以接收並解析的json對象的格式一致時,可以不對其進行格式轉換。

在該實施例中,若bson對象的類型格式與伺服器的傳輸格式(和/解析格式)不一致時,按照預先獲取的轉換信息進行格式轉換,將bson對象的數據傳輸格式轉換為 對應的類型格式,並在傳輸過程中當作jsonstring進行傳輸,伺服器接收到該jsonstring之後,在後臺再對應進行解析)。

因為是按照jsonstring的形式進行傳輸,所以全部數據類型最外層都套一層」」(雙引號),從而後臺首先進行json解析的時候能夠當成字符串在後臺進行解析,進而可以根據上述的轉換信息對json的值進行而分析出不同的bson類型。

具體地,裝置還可以包括:返回單元,用於在網頁應用的前端將第二對象發送至伺服器之後,網頁應用的前端接收伺服器返回的第三對象,其中,第三對象中包括伺服器執行第二對象得到的第二信息,第三對象的數據傳輸格式符合網頁應用的客戶端的傳輸格式。

其中,第三對象的數據傳輸格式符合分布式文檔存儲資料庫mongodb的網頁應用的前端的傳輸格式。

具體地,後臺伺服器轉換執行結果,得到最終的數據結構是

這個數據結構通過fastjson進行轉換成字符串之後會發往前端。

可選地,網頁應用為分布式文檔存儲資料庫的網頁應用。

本實施例中所提供的各個模塊與方法實施例對應步驟所提供的使用方法相同、應用場景也可以相同。當然,需要注意的是,上述模塊涉及的方案可以不限於上述實施例中的內容和場景,且上述模塊可以運行在計算機終端或移動終端,可以通過軟體或硬體實現。

實施例4

根據本申請實施例,還提供了一種用於實施上述網頁應用的數據處理方法的網頁應用的數據處理裝置,如圖9所示,該裝置設置在網頁應用的伺服器上,包括:接收單元91和處理單元93。

其中,接收單元,用於接收網頁應用的前端發送的第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式相匹配;

處理單元,用於伺服器按照預先獲取的轉換信息,解析第二對象,得到第二對象攜帶的第一信息。

採用本申請上述實施例,伺服器接收前端發送的與伺服器的傳輸格式相匹配的第二對象,在接收到第二對象之後,解析第二對象,得到第二對象攜帶的第一信息,在該實施例中,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

上述實施例中的網頁應用可以為分布式文檔存儲資料庫mongodb的網頁應用,用戶可以通過該網頁應用的前端輸入查詢請求,以查詢該mongodb內的數據。

上述實施例中的第一對象可以為分布式文檔存儲資料庫mongodb的bson對象,第二對象可以為允許被伺服器解析的json對象。該預先獲取的轉換信息可以為預先設置的轉換協議或通訊協議,該轉換信息中記錄有bson對象的對象類型對應的類型格式。

根據本申請的上述實施例,裝置還可以包括:執行單元,用於在得到第二對象攜帶的第一信息之後,執行第一信息指示的操作,得到第二信息;生成單元,用於按照預先獲取的轉換信息,將第二信息生成第三對象,其中,第三對象的數據傳輸格式與網頁應用的前端的傳輸格式相匹配;發送單元,用於發送第三對象至網頁應用的前端。

具體地,處理單元可以包括:確定模塊,用於將第二對象作為字符串,確定第二對象的值;查詢模塊,用於在預先獲取的轉換信息中,查詢第二對象的值所屬的類型格式;解析單元,用於在查詢到第二對象的值所屬的類型格式的情況下,按照類型格式解析第二對象中攜帶的第一信息。

本實施例中所提供的各個模塊與方法實施例對應步驟所提供的使用方法相同、應用場景也可以相同。當然,需要注意的是,上述模塊涉及的方案可以不限於上述實施例中的內容和場景,且上述模塊可以運行在計算機終端或移動終端,可以通過軟體或硬體實現。

實施例5

本申請的實施例可以提供一種計算機終端或伺服器,該計算機終端可以是計算機終端群中的任意一個計算機終端設備。可選地,在本實施例中,上述計算機終端也可以替換為移動終端等終端設備。

可選地,在本實施例中,上述計算機終端可以位於計算機網絡的多個網絡設備中的至少一個網絡設備。

在本實施例中,上述計算機終端可以執行網頁應用的數據處理方法中以下步驟:

步驟s2:網頁應用的前端通過接收的第一信息生成第一對象,其中,第一對象的數據傳輸格式與網頁應用的伺服器的傳輸格式不匹配;

步驟s4:網頁應用的前端按照預先獲取的轉換信息,轉換第一對象的數據傳輸格式得到第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式匹配;

步驟s6:網頁應用的前端將第二對象發送至伺服器。

採用本申請上述實施例,在前端基於接收的第一信息生成第一對象之後,轉換第一對象的數據傳輸格式,將其數據傳輸格式轉換為伺服器的傳輸格式,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

上述實施例中的網頁應用可以為分布式文檔存儲資料庫mongodb的網頁應用,用戶可以通過該網頁應用的前端輸入查詢請求,以查詢該mongodb內的數據。

在本實施例中,上述計算機終端可以執行網頁應用的數據處理方法中以下步驟:

步驟s1:伺服器接收網頁應用的前端發送的第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式相匹配;

步驟s3:伺服器按照預先獲取的轉換信息,解析第二對象,得到第二對象攜帶的第一信息。

採用本申請上述實施例,伺服器接收前端發送的與伺服器的傳輸格式相匹配的第二對象,在接收到第二對象之後,解析第二對象,得到第二對象攜帶的第一信息,在該實施例中,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

可選地,圖10是根據本申請實施例的一種計算機終端的結構框圖。如圖10所示, 該計算機終端a可以包括:一個或多個(圖中僅示出一個)處理器1001、存儲器1003、以及傳輸裝置1005。

其中,存儲器1003可用於存儲軟體程序以及模塊,如本申請實施例中的網頁應用的數據處理方法對應的程序指令/模塊,處理器1001通過運行存儲在存儲器1003內的軟體程序以及模塊,從而執行各種功能應用以及數據處理,即實現上述的網頁應用的數據處理方法。存儲器1003可包括高速隨機存儲器,還可以包括非易失性存儲器,如一個或者多個磁性存儲裝置、快閃記憶體、或者其他非易失性固態存儲器。在一些實例中,存儲器1003可進一步包括相對於處理器遠程設置的存儲器,這些遠程存儲器可以通過網絡連接至終端a。上述網絡的實例包括但不限於網際網路、企業內部網、區域網、移動通信網及其組合。

上述的傳輸裝置1005用於經由一個網絡接收或者發送數據。上述的網絡具體實例可包括有線網絡及無線網絡。在一個實例中,傳輸裝置1005包括一個網絡適配器(networkinterfacecontroller,nic),其可通過網線與其他網絡設備與路由器相連從而可與網際網路或區域網進行通訊。在一個實例中,傳輸裝置1005為射頻(radiofrequency,rf)模塊,其用於通過無線方式與網際網路進行通訊。

本領域普通技術人員可以理解,圖10所示的結構僅為示意,計算機終端也可以是智慧型手機(如android手機、ios手機等)、平板電腦、掌聲電腦以及移動網際網路設備(mobileinternetdevices,mid)、pad等終端設備。圖10其並不對上述電子裝置的結構造成限定。例如,計算機終端a還可包括比圖10中所示更多或者更少的組件(如網絡接口、顯示裝置等),或者具有與圖10所示不同的配置。

本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令終端設備相關的硬體來完成,該程序可以存儲於一計算機可讀存儲介質中,存儲介質可以包括:快閃記憶體盤、只讀存儲器(read-onlymemory,rom)、隨機存取器(randomaccessmemory,ram)、磁碟或光碟等。

實施例6

本申請的實施例還提供了一種存儲介質。可選地,在本實施例中,上述存儲介質可以用於保存上述實施例一所提供的網頁應用的數據處理方法所執行的程序代碼。

可選地,在本實施例中,上述存儲介質可以位於計算機網絡中計算機終端群中的任意一個計算機終端中,或者位於移動終端群中的任意一個移動終端中。

可選地,在本實施例中,存儲介質被設置為存儲用於執行以下步驟的程序代碼:

步驟s2:網頁應用的前端通過接收的第一信息生成第一對象,其中,第一對象的數據傳輸格式與網頁應用的伺服器的傳輸格式不匹配;

步驟s4:網頁應用的前端按照預先獲取的轉換信息,轉換第一對象的數據傳輸格式得到第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式匹配;

步驟s6:網頁應用的前端將第二對象發送至伺服器。

採用本申請上述實施例,在前端基於接收的第一信息生成第一對象之後,轉換第一對象的數據傳輸格式,將其數據傳輸格式轉換為伺服器的傳輸格式,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

上述實施例中的網頁應用可以為分布式文檔存儲資料庫mongodb的網頁應用,用戶可以通過該網頁應用的前端輸入查詢請求,以查詢該mongodb內的數據。

可選地,在本實施例中,存儲介質被設置為存儲用於執行以下步驟的程序代碼:

步驟s1:伺服器接收網頁應用的前端發送的第二對象,其中,第二對象的數據傳輸格式與伺服器的傳輸格式相匹配;

步驟s3:伺服器按照預先獲取的轉換信息,解析第二對象,得到第二對象攜帶的第一信息。

採用本申請上述實施例,伺服器接收前端發送的與伺服器的傳輸格式相匹配的第二對象,在接收到第二對象之後,解析第二對象,得到第二對象攜帶的第一信息,在該實施例中,使用轉換格式後的第二對象在前端和後臺伺服器之間傳輸。通過上述實施例,bson格式數據可轉換為json格式的數據,使用json格式的數據在前端和伺服器之間進行傳輸,伺服器可以正確接收並解析該轉換後的json格式的數據,解決了現有技術中bson數據無法在前後臺進行傳輸的問題,實現了網頁應用的信息在前端和後臺之間正確且高效的傳輸。

上述本申請實施例序號僅僅為了描述,不代表實施例的優劣。

在本申請的上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。

在本申請所提供的幾個實施例中,應該理解到,所揭露的技術內容,可通過其它 的方式實現。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特徵可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。

另外,在本申請各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用軟體功能單元的形式實現。

所述集成的單元如果以軟體功能單元的形式實現並作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基於這樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可為個人計算機、伺服器或者網絡設備等)執行本申請各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、移動硬碟、磁碟或者光碟等各種可以存儲程序代碼的介質。

以上所述僅是本申請的優選實施方式,應當指出,對於本技術領域的普通技術人員來說,在不脫離本申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本申請的保護範圍。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀