CN106067893A - 一种基于Web的数据交互方法 - Google Patents
一种基于Web的数据交互方法 Download PDFInfo
- Publication number
- CN106067893A CN106067893A CN201610253497.7A CN201610253497A CN106067893A CN 106067893 A CN106067893 A CN 106067893A CN 201610253497 A CN201610253497 A CN 201610253497A CN 106067893 A CN106067893 A CN 106067893A
- Authority
- CN
- China
- Prior art keywords
- data
- client
- server
- method based
- interactive method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 13
- 230000008569 process Effects 0.000 claims description 22
- 230000005540 biological transmission Effects 0.000 claims description 14
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 230000009471 action Effects 0.000 claims description 3
- 238000013523 data management Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000007405 data analysis Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
- H04L67/5651—Reducing the amount or size of exchanged application data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于Web的数据交互方法,在web的基础上使用元数据把客户端创建路网时产生的数据管理起来,再通过websocket把经过标准化的数据传输到服务端,最后对标准化后的数据进行解析并存入数据库,对从ArcSDE管理的SQL数据库获取到的数据重复上述的步骤,再在客户端显示出来,这就实现了HTML5客户端与ArcSDE数据库之间的互操作。
Description
技术领域
本发明涉及数据通信领域,更具体地,涉及一种基于Web的数据交互方法。
背景技术
传统的不同数据格式的数据的交互方法主要有:数据格式转换和直接访问。若数据格式转换是不同系统之间数据格式的直接转换,这个方法不但会损坏数据信息,而且还需要详细掌握对方的数据结构;若数据格式转换是不同的系统之间采用一定数据交换格式标准作为中介来实现数据转换,但是这些数据标准很复杂,需要投入很大的资金和精力进行维护。基于直接访问的互操作指的是一个系统可以直接访问另外一个系统的数据,并把数据读入内存,它不需要中介格式也不需要拥有该数据格式的宿主,不足之处是需要充分了解要访问数据的格式,且只对某一特定的数据格式访问服务,实用性不强。
发明内容
本发明提供一种基于Web的数据交互方法,来实现不同存储格式的数据之间的交互。
为解决上述技术问题,本发明的技术方案如下:
一种基于Web的数据交互方法,包括客户端向服务器传输数据的过程和服务器向客户端传输数据的过程;
客户端向服务器传输数据的过程如下:
S1:客户端将需传输至服务器的数据进行标准化;
S2:客户端利用传输协议把标准化后的数据传输到服务器,该服务器保存数据的格式不同于客户端创建路网时产生的数据的格式;
S3:服务器根据标准化数据的标准以及传输协议标准对客户端传过来的数据进行解析把数据反序列化之后保存到服务器的数据库中;
服务器向客户端传输数据的过程如下:
S4:服务器将其数据库中的数据进行与S1中相同的标准化后利用传输协议把标准化后的数据传输到客户端,客户端中保存数据的格式与服务器数据库中数 据的格式不同;
S5:客户端根据标准化数据的标准以及传输协议标准对客户端传过来的数据进行解析把数据反序列化后在客户端上显示出来。
步骤S1中对获取到的数据进行标准化的过程如下:
对获取到的数据进行格式转换,利用元数据对格式转换后的数据进行组织后再进行数据封包。
进一步地,所述元数据包括用户名UserID、登陆密码Password、顶级路网NetworkID、操作编号OperationID;客户端/服务器利用该元数据把在服务器与客户端之间交互的数据组织起来以便管理和储存。
进一步地,进行数据封包的过程如下:
定制数据的消息格式,格式包括:开始符、数据长度、功能关键字、数据内容和结尾符;
定制制定协议字符和功能关键字。
进一步地,步骤S3或S5中数据解析的过程如下:
循环接收数据,把数据存入服务器或客户端其的队列,定时从队列里面取数据,根据数据的长度判断数据是否已经接收完整,当接收到的数据未完整,继续接收数据直到数据直到数据包接收完整,当接收到的数据包已经完整,从队列出列存入服务器数据库或在客户端上显示。
优选地,所述步骤S2或S4中采用的传输协议是websocket协议。
与现有技术相比,本发明技术方案的有益效果是:
在web的基础上使用元数据把客户端创建路网时产生的数据管理起来,再通过websocket把经过标准化的数据传输到服务端,最后对标准化后的数据进行解析并存入数据库,对从ArcSDE管理的SQL数据库获取到的数据重复上述的步骤,再在客户端显示出来,这就实现了HTML5客户端与ArcSDE数据库之间的互操作。
附图说明
图1为本发明方法的流程图;
图2为本发明XML文件坐标对象转换成JSON格式坐标流程图;
图3、4为用JSON格式以及元数据对数据进行组织时的数据总体组织树状图;
图5为本发明中数据解析流程图;
图6为本发明中数据长度的获取流程图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
一种基于Web的数据交互方法,包括客户端向服务器传输数据的过程和服务器向客户端传输数据的过程;
客户端向服务器传输数据的过程如下:
S1:客户端将需传输至服务器的数据进行标准化;
S2:客户端利用传输协议把标准化后的数据传输到服务器,该服务器保存数据的格式不同于客户端创建路网时产生的数据的格式;
S3:服务器根据标准化数据的标准以及传输协议标准对客户端传过来的数据进行解析把数据反序列化之后保存到服务器的数据库中;
服务器向客户端传输数据的过程如下:
S4:服务器将其数据库中的数据进行与S1中相同的标准化后利用传输协议把标准化后的数据传输到客户端,客户端中保存数据的格式与服务器数据库中数据的格式不同;
S5:客户端根据标准化数据的标准以及传输协议标准对客户端传过来的数据进行解析把数据反序列化后在客户端上显示出来。
本实施例中,如图1所示,以从HTML5客户端创建路网存储到ArcSDE管理的SQL数据库为例,获取HTML5客户端创建路网时产生的数据,对获取到的数据进行标准化,其中标准化的子流程有:首先,对数据进行格式转换;其次,对获取到的数据坐标进行转换;再次,利用元数据对数据进行组织;最后,进行数据封包。数据标准化后,利用Websocket协议把标准化的数据传输到服务端,然后服务端根据制定的数据标准以及Websocket协议标准对客户端传过来的数据进行解析,把数据反序列化之后进行数据的入库;对从ArcSDE管理的SQL数据 库获取到的数据重复上述的步骤,再在客户端显示出来,这就实现了HTML5客户端与ArcSDE数据库之间的互操作。
本实施例中,如图2所示,以GIS地理信息数据在不同的系统或客户端之间的交互为例,将交互的数据都转换成JSON格式,HTML5客户保存的数据的格式是XML,如:
<!DOCTYPE html>
<head>
<title>Mrbool.com-HTML5Tutorials</title>
<meta charset="utf-8"/>
</head>
<body>
<h2>HTML5SVG Polygon Example</h2>
<svg id="svgPolygonTutorial"height="200"xmlns="http://www.w3.org/2000/svg">
<polygon id="myPolygon"points="10,10 75,150 150,60"
style="fill:#63BCF7;stroke:black;stroke-width:3"/>
</svg>
</body>
</html>
它记录了要素的一些几何属性,由于HTML5客户端支持JSON数据格式,以JSON格式存储了拓扑以及属性之类的信息,这里要处理的是把坐标对象转换成JSON格式,它需要从XML文件中提取出来并进行转换JSON格式为:{Geometry:[{“X”:10,”Y”:10},{“X”:75,”Y”:150}{“X”:150,”Y”:60}]}。由于HTML5客户端传输的GIS数据包括屏幕坐标,而在GIS使用的是地理坐标,所以这里有必要对坐标进行转换,地理坐标定义规则:X轴向右递增,Y轴向上递增;屏幕坐标定义规则:X轴向右递增,Y轴向下递增。他们的不同:地理坐标和屏幕坐标的区别仅仅只是在于Y轴递增方向是相反的,更具下式能将XML格式转换成JSON格式:
将屏幕坐标转换为地理坐标的公式如下:
ptGeo.X=geo_center_.X+(ptWnd.X-see_center_.X)*resolution
ptGeo.Y=geo_center_.Y-(ptWnd.Y-see_center_.Y)*resolution
将地理坐标转换为窗口坐标的公式如下:
ptWnd.X=see_center_.X+(long)((ptGeo.X-geo_center_.X)/resolution+0.5)
ptWnd.Y=see_center_.Y-(long)((ptGeo.Y-geo_center_.Y)/resolution+0.5)
其中ptWnd表示窗口坐标,ptGeo代表地理坐标,see_center是屏幕坐标的窗口中心、geo_center是地理坐标的视野中心,而resolution_就是当前的比例尺。
本实施例中,利用元数据对数据进行组织,元数据主要包括用户名(UserID),登陆密码(Password),顶级路网(NetworkID),操作编号(OperationID)等,这些数据用树的形式把操作数据组织起来,既方便了数据的管理,也方便了数据的存储。对于数据的组织采取JSON格式,数据的组织结构用树的形式来表示,操作数据的组织形式如附图3、4(其中,图3、4是路网对象的组织形式,并不是逻辑过程,它代表的是路网的树状结构)。
对数据进行封包,其流程如下:
封包步骤一:制定消息格式,其消息格式如表A.1
表A.1 消息格式
其中数据长度是数据的总字节数,用8个字节表示,考虑客户端传输过程中websocket协议添加的数据头文件字节数,在服务端接收到的数据包长度应等于数据包长度,协议制定的包头包尾长度以及websocket协议添加的数据头文件字节数之和,不足8个,在前面补0;功能关键字用分类标识+2字节序号表示,不足3个,在前面补0.开始符合结尾符分别用1个字节表示。对于数据长度的获取流程如附图6
封包步骤二:制定协议字符
开始符:“*”;
结束符:“#”;
封包步骤三:制定功能关键字
功能关键字采用分类标识+2字节序号,如U01,分类标识见表A.2。
表A.2 功能关键字分类定义
示例:*00000096L01{"userobject":{"UserName":"ming","Password":"123","CreateTime":"","UserResume":""}}#
如图5所示,数据解析过程如下:循环接收数据,把数据存入服务器或客户端其的队列,定时从队列里面取数据,根据数据的长度判断数据是否已经接收完整,当接收到的数据未完整,继续接收数据直到数据包接收完整,当接收到的数据包已经完整,从队列出列存入服务器数据库或在客户端上显示。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (6)
1.一种基于Web的数据交互方法,其特征在于,包括客户端向服务器传输数据的过程和服务器向客户端传输数据的过程;
客户端向服务器传输数据的过程如下:
S1:客户端将需传输至服务器的数据进行标准化;
S2:客户端利用传输协议把标准化后的数据传输到服务器,该服务器保存数据的格式不同于客户端创建路网时产生的数据的格式;
S3:服务器根据标准化数据的标准以及传输协议标准对客户端传过来的数据进行解析把数据反序列化之后保存到服务器的数据库中;
服务器向客户端传输数据的过程如下:
S4:服务器将其数据库中的数据进行与S1中相同的标准化后利用传输协议把标准化后的数据传输到客户端,客户端中保存数据的格式与服务器数据库中数据的格式不同;
S5:客户端根据标准化数据的标准以及传输协议标准对客户端传过来的数据进行解析把数据反序列化后在客户端上显示出来。
2.根据权利要求1所述的基于Web的数据交互方法,其特征在于,所述步骤S1中对获取到的数据进行标准化的过程如下:
对获取到的数据进行格式转换,利用元数据对格式转换后的数据进行组织后再进行数据封包。
3.根据权利要求2所述的基于Web的数据交互方法,其特征在于,所述元数据包括用户名UserID、登陆密码Password、顶级路网NetworkID、操作编号OperationID;客户端/服务器利用该元数据把在服务器与客户端之间交互的数据组织起来以便管理和储存。
4.根据权利要求2所述的基于Web的数据交互方法,其特征在于,进行数据封包的过程如下:
定制数据的消息格式,格式包括:开始符、数据长度、功能关键字、数据内容和结尾符;
定制制定协议字符和功能关键字。
5.根据权利要求2所述的基于Web的数据交互方法,其特征在于,步骤S3或S5中数据解析的过程如下:
循环接收数据,把数据存入服务器或客户端其的队列,定时从队列里面取数据,根据数据的长度判断数据是否已经接收完整,当接收到的数据未完整,继续接收数据直到数据包接收完整,当接收到的数据包已经完整,从队列出列存入服务器数据库或在客户端上显示。
6.根据权利要求1所述的基于Web的数据交互方法,其特征在于,所述步骤S2或S4中采用的传输协议是websocket协议。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610253497.7A CN106067893A (zh) | 2016-09-14 | 2016-09-14 | 一种基于Web的数据交互方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610253497.7A CN106067893A (zh) | 2016-09-14 | 2016-09-14 | 一种基于Web的数据交互方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106067893A true CN106067893A (zh) | 2016-11-02 |
Family
ID=57419966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610253497.7A Pending CN106067893A (zh) | 2016-09-14 | 2016-09-14 | 一种基于Web的数据交互方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106067893A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1464435A (zh) * | 2002-06-26 | 2003-12-31 | 联想(北京)有限公司 | 嵌入式系统与外部数据库进行数据交换的方法 |
US7254608B2 (en) * | 2002-10-31 | 2007-08-07 | Sun Microsystems, Inc. | Managing distribution of content using mobile agents in peer-topeer networks |
CN101764809A (zh) * | 2009-12-18 | 2010-06-30 | 航天东方红卫星有限公司 | 一种卫星测试数据采集框架系统 |
CN102710609A (zh) * | 2012-05-11 | 2012-10-03 | 许继集团有限公司 | 一种自动化系统集成通讯平台 |
CN103092951A (zh) * | 2013-01-15 | 2013-05-08 | 福州特力惠电子有限公司 | 一种基于信息展现层的通用数据交换方法及系统 |
US20140047017A1 (en) * | 2009-01-16 | 2014-02-13 | Tianjin Changhe Technology Co. Ltd. | Software Platform and Method for Processing Unstructured Data |
WO2014082908A1 (en) * | 2012-11-28 | 2014-06-05 | Siemens Aktiengesellschaft | Method and apparatus for generating test case for fuzz test |
EP2557876B1 (en) * | 2011-07-29 | 2016-10-12 | Mitsubishi Electric R&D Centre Europe B.V. | Method and device for allocating time-frequency resources for transmitting data packets |
-
2016
- 2016-09-14 CN CN201610253497.7A patent/CN106067893A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1464435A (zh) * | 2002-06-26 | 2003-12-31 | 联想(北京)有限公司 | 嵌入式系统与外部数据库进行数据交换的方法 |
US7254608B2 (en) * | 2002-10-31 | 2007-08-07 | Sun Microsystems, Inc. | Managing distribution of content using mobile agents in peer-topeer networks |
US20140047017A1 (en) * | 2009-01-16 | 2014-02-13 | Tianjin Changhe Technology Co. Ltd. | Software Platform and Method for Processing Unstructured Data |
CN101764809A (zh) * | 2009-12-18 | 2010-06-30 | 航天东方红卫星有限公司 | 一种卫星测试数据采集框架系统 |
EP2557876B1 (en) * | 2011-07-29 | 2016-10-12 | Mitsubishi Electric R&D Centre Europe B.V. | Method and device for allocating time-frequency resources for transmitting data packets |
CN102710609A (zh) * | 2012-05-11 | 2012-10-03 | 许继集团有限公司 | 一种自动化系统集成通讯平台 |
WO2014082908A1 (en) * | 2012-11-28 | 2014-06-05 | Siemens Aktiengesellschaft | Method and apparatus for generating test case for fuzz test |
CN103092951A (zh) * | 2013-01-15 | 2013-05-08 | 福州特力惠电子有限公司 | 一种基于信息展现层的通用数据交换方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110784419B (zh) | 铁路电务专业数据可视化方法及系统 | |
CN106326381A (zh) | 基于MapDB构建的HBase数据检索方法 | |
CN103095823A (zh) | 一种物联网系统中对象的描述方法及对象信息交互系统 | |
CN101609415B (zh) | 基于中间件的通用服务调用系统及方法 | |
CN106209431A (zh) | 一种告警关联方法及网管系统 | |
US11188443B2 (en) | Method, apparatus and system for processing log data | |
US20140059381A1 (en) | Methods for testing odata services | |
JP2004362557A (ja) | 計器データを処理するシステム及び方法 | |
CN107220274A (zh) | 一种可视化数据接口集市实现方法 | |
CN103488696B (zh) | Cpe的业务查询方法、装置及系统、acs和cpe | |
CN108062368A (zh) | 全量数据翻译方法、装置、服务器及存储介质 | |
Shinavier | Real-time# SemanticWeb in<= 140 chars | |
CN104021216B (zh) | 消息代理服务器及信息发布订阅方法和系统 | |
CN108664546A (zh) | Xml数据结构转换方法和装置 | |
CN110020243A (zh) | 物联网数据的查询方法、装置、物联网服务器和存储介质 | |
CN106599015A (zh) | 一种数据服务管理系统及其方法 | |
CN105159997B (zh) | 报表处理方法及报表处理系统 | |
CN107070978A (zh) | 一种跨网代理Web地图服务的方法、系统及代理服务器 | |
CN110502560A (zh) | 一种数据库连接参数封装的方法及服务器 | |
US9886424B2 (en) | Web application framework for extracting content | |
CN106067893A (zh) | 一种基于Web的数据交互方法 | |
CN103514376A (zh) | 异构医疗信息系统之间协同交换中间件实现方法 | |
CN110381023A (zh) | 一种基于mqtt协议的消息存储方法 | |
US10572523B1 (en) | Method and apparatus of obtaining and organizing relevant user defined information | |
US20150067475A1 (en) | Web Application Framework |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161102 |
|
RJ01 | Rejection of invention patent application after publication |