CN103957211B - 客户端与前端页面之间的数据通信方法及装置 - Google Patents
客户端与前端页面之间的数据通信方法及装置 Download PDFInfo
- Publication number
- CN103957211B CN103957211B CN201410183497.5A CN201410183497A CN103957211B CN 103957211 B CN103957211 B CN 103957211B CN 201410183497 A CN201410183497 A CN 201410183497A CN 103957211 B CN103957211 B CN 103957211B
- Authority
- CN
- China
- Prior art keywords
- end page
- function
- page
- client
- implementing result
- 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.)
- Active
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明提供一种客户端与前端页面之间的数据通信方法及装置,涉及互联网技术。其中,客户端与前端页面之间的数据通信方法包括:建立与前端页面的通信接口,其中,通信接口中包括命令名称与功能函数的对应关系表;通过通信接口接收并读取前端页面发送的命令名称和回调函数的名称;根据对应关系表确定命令名称对应的功能函数,并执行功能函数以获取执行结果;将执行结果和回调函数的名称发送给前端页面,前端页面根据执行结果运行回调函数。通过本发明的实施方式,能够优化客户端和前端页面的数据通信方式。
Description
技术领域
本发明涉及互联网领域,特别涉及一种客户端与前端页面之间的数据通信方法及装置。
背景技术
现有技术中,客户端和前端页面之间通过取值型接口(Application ProgrammingInterface,简称为API)进行数据传输。通过取值型API进行的数据传输是同步的,当前端页面向客户端发起某个数据请求时,客户端立即进行数据的抓取和处理,并将结果返回给前端,如果客户端在抓取和处理的过程中出现错误,则会发生卡顿,使后续其他的数据请求无法正常进行,因此降低客户端和前端页面之间数据传输的效率。
发明内容
本发明实施例提供一种客户端与前端页面之间的数据通信方法及装置,以实现对客户端和前端页面的数据通信方式的优化。
本发明为了实现上述目的,提供一种客户端与前端页面之间的数据通信方法。该方法包括:客户端建立与前端页面的通信接口,其中,通信接口中包括命令名称与功能函数的对应关系表;客户端通过通信接口接收并读取前端页面发送的命令名称和回调函数的名称;客户端根据对应关系表确定命令名称对应的功能函数,并执行功能函数以获取执行结果;客户端将执行结果和回调函数的名称发送给前端页面,前端页面根据执行结果运行回调函数。
在一个实施例中,在接收到多个前端页面发送的命令名称和回调函数的名称时,客户端根据先后顺序读取各前端页面发送的命令名称和回调函数的名称。
在一个实施例中,各前端页面生成自身的页面标识;客户端在执行功能函数后,将执行结果发送至各页面标识对应的前端页面。
在一个实施例中,客户端生成各前端页面的页面标识;客户端在执行功能函数后,将执行结果发送至各页面标识对应的前端页面。
在一个实施例中,对应关系表通过哈希函数生成。
本发明为了实现上述目的,提供一种客户端与前端页面之间的数据通信装置。该装置包括:建立单元,用于与前端页面的通信接口,其中,通信接口中包括命令名称与功能函数的对应关系表;
读取单元,用于通过通信接口接收并读取前端页面发送的命令名称和回调函数的名称;
确定单元,用于根据对应关系表确定命令名称对应的功能函数,并执行功能函数以获取执行结果;
第一发送单元,用于将执行结果和回调函数的名称发送给前端页面,前端页面根据执行结果运行回调函数。
在一个实施例中,读取单元根据先后顺序读取各前端页面发送的命令名称和回调函数的名称。
在一个实施例中,上述装置还包括:执行单元,用于执行功能函数后,将执行结果发送至各页面标识对应的前端页面,其中,各前端页面生成自身的页面标识。
在一个实施例中,上述装置还包括:生成单元,用于生成各前端页面的页面标识;第二发送单元,用于在执行功能函数后,将执行结果发送至各页面标识对应的前端页面。
在一个实施例中,对应关系表通过哈希函数生成。
本发明实施例通过通信接口传输命令名称,异步执行各功能函数,避免了客户端和前端之间的卡顿,提高了信息传输的效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1是本发明实施例示出的客户端与前端页面之间的数据通信方法的流程图;
图2是本发明优选实施例示出的客户端与前端页面之间的数据通信方法的流程图;
图3是本发明实施例示出的客户端和前端页面之间的结构示意图;
图4是本发明实施例示出的客户端与前端页面之间的数据通信装置的结构框图;
图5是本发明一种优选实施例示出的客户端与前端页面之间的数据通信装置的结构框图;以及
图6是本发明另一种优选实施例示出的客户端与前端页面之间的数据通信装置的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例作进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
现在将参考附图进一步详细描述本发明。
本发明可以许多不同的形式来实现,不应该被理解为仅限于此处所阐述的实施例。这些实施例只作为示例提供,以便为本领域技术人员提供对本发明的完全理解。
图1是本发明实施例示出的客户端与前端页面之间的数据通信方法100的流程图,如图1所示,该方法包括以下步骤:
步骤110,客户端建立与前端页面的通信接口,其中,通信接口中包括命令名称与功能函数的对应关系表。
步骤120,客户端通过通信接口接收并读取前端页面发送的命令名称和回调函数的名称。
步骤130,客户端根据对应关系表确定命令名称对应的功能函数,并执行功能函数以获取执行结果。
步骤140,客户端将执行结果和回调函数的名称发送给前端页面,前端页面根据执行结果运行回调函数。具体地,前端页面可将执行结果作为该回调函数的输入值,对回调函数进行运行。
在本实施例中,客户端建立了命令名称与功能函数的对应关系表,根据前端页面发送的命令名称查找该功能函数,并通过回调函数返回功能函数的结果,避免了前端页面直接调用功能函数及后续的同步操作,因此优化了客户端和前端页面的数据通信方式。
上述对应关系表可以通过哈希函数生成,通过哈希函数可以保证严格的一一对应,且具有较高的保密性。
在一些实施例中,客户端可能会收到多个前端页面发送的命令名称和回调函数的名称,此时客户端可以根据先后顺序读取各前端页面发送的命令名称和回调函数的名称。
对于多个前端页面,需要进行区分,以免数据的混淆,在一种实现方式中,各前端页面可以生成自身的页面标识,客户端在执行功能函数后,将执行结果输入各页面标识对应的前端页面,各前端页面可以随机生成页面标识,所使用的算法比较简单。
在另一种实现方式中,也可以由客户端生成各前端页面的页面标识,客户端在执行功能函数后,将执行结果输入各页面标识对应的前端页面,有客户端生成各前端页面的页面标识,保证了个页面标识的唯一性。
图2是本发明优选实施例示出的客户端与前端页面之间的数据通信方法200的流程图,如图2所示,该方法包括以下步骤:
步骤210,客户端接收到多个前端页面发送的信息sendRequest。
每条sendRequest信息中均包括前端页面的页面标识,回调函数名称、命令名称等数据。
页面标识用于对不同的前端页面进行区分,该页面标识可以有前端页面生成或由客户端生成,本实施例中的页面标识由客户端生成,以保证各页面标识的唯一性。
步骤220,客户端根据先后顺序处理sendRequest信息。
客户端将接收到的sendRequest信息存储于队列中,按先进先出的原则进行处理,在处理各sendRequest信息时,客户端根据哈希函数,在预设的对应关系表中查找命令名称对应的功能函数。如果可以查找到对应的功能函数,则执行步骤230;如果不能查找到对应的功能函数,则执行步骤240。
步骤230,客户端执行该功能函数,并在执行完该功能函数后,执行步骤250。
功能函数的功能可以是取值或运算等,例如获取实时的气温或空气质量指数等数值。
步骤240,客户端报错,并执行步骤270。
如果没有查找到功能函数,无法进行操作,则客户端向前端报错,并跳过本条sendRequest信息,开始处理下一条sendRequest信息。
步骤250,客户端获取执行结果。
步骤260,客户端将执行结果和回调函数的名称返回给前端页面。
前端页面利用功能函数的执行结果进一步执行回调函数,回调函数中包括前端所要执行的操作,如一些页面展示动作等,例如,客户端在前述步骤中通过功能函数获取了空气质量指数等数据,那么在本步骤中可以将这些数据按特定的形式进行特定的展示,如果上述步骤中功能函数获取的数值小于100,则本步骤执行回调函数后,展示的空气质量指数的背景是晴天;如果上述步骤中功能函数获取的数值大于100,则本步骤执行回调函数后,展示空气质量指数的背景是雾天。
步骤270,在处理完一条sendRequest信息后,客户端开始处理下一条sendRequest信息。
将执行结果返回给回调函数,则对该sendRequest信息的处理已经全部结束。如果客户端还接收到了其他sendRequest信息,那么继续按照先后顺序处理其他sendRequest信息。
图3是本发明实施例示出的客户端和前端页面之间的结构示意图,如图3所示,前端页面310-1至前端页面310-K(K为正整数)统称为前端页面310(图3中未示出前端页面310),前端页面310中包括回调函数311和页面标识312(图3中未示出回调函数311和页面标识312),具体地,前端页面310-1中包括回调函数311-1和页面标识312-1,前端页面310-2中包括回调函数311-2和页面标识312-2,前端页面310-K中包括回调函数311-K和页面标识312-K。
通信接口320中包括对应关系表321,前端页面310向通信接口320发送命令名称和回调函数名称后,通信接口320将命令名称对应的功能函数名称以及回调函数名称发送给客户端330,客户端通过调用请求调用功能函数340-1至功能函数340-N(N为正整数)中的任一个(功能函数340-1至功能函数340-N统称为功能函数340,图3中未示出功能函数340),并根据回调函数名称,将调用的功能函数340的操作结果返回给对应的前端页面310中的回调函数311,从而完成客户端330与前端页面310之间的数据通信。
图4是本发明实施例示出的客户端与前端页面之间的数据通信装置400的结构框图,在一个实施例中,图4客户端与前端页面之间的数据通信装置400包含于图3所示客户端330中,用于执行客户端与前端页面的数据通信。以下对图4的说明结合图3进行。
如图4所示,该装置包括建立单元410、读取单元420、确定单元430和第一发送单元440。
建立单元410用于与前端页面310的通信接口320,其中,通信接口320中包括命令名称与功能函数的对应关系表321。
该对应关系表321可以通过哈希函数生成。
读取单元420用于通过通信接口320接收并读取前端页面310发送的命令名称和回调函数311的名称。
确定单元430用于根据对应关系表321确定命令名称对应的功能函数340,并执行功能函数340以获取执行结果。
第一发送单元440,用于将执行结果和回调函数的名称发送给前端页面310,前端页面310根据执行结果运行回调函数311。
本实施例中,读取单元420可以根据先后顺序读取各前端页面发送的命令名称和回调函数的名称。
在本发明的一种优选实施例中,该装置还可以包括执行单元。图5是本发明一种优选实施例示出的客户端与前端页面之间的数据通信装置500的结构框图,如图5所示,该装置在图4所示装置400的基础上,还包括执行单元510。对图5的说明同样结合图3进行。
执行单元510用于执行功能函数340后,将执行结果发送至各页面标识对应的前端页面310,其中,各前端页面310生成自身的页面标识。
图6是本发明另一种优选实施例示出的客户端与前端页面之间的数据通信装置600的结构框图,如图6所示,该装置在图4所示装置400的基础上,还包括生成单元610和第二发送单元620。对图6的说明同样结合图3进行。
生成单元610用于生成各前端页面的页面标识。
第二发送单元620用于在执行功能函数340后,将执行结果发送至各页面标识对应的前端页面。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种客户端与前端页面之间的数据通信方法,其特征在于,包括:
所述客户端建立与所述前端页面的通信接口,其中,所述通信接口中包括命令名称与功能函数的对应关系表;
所述客户端通过所述通信接口接收并读取所述前端页面发送的命令名称和回调函数的名称;
所述客户端根据所述对应关系表确定所述命令名称对应的功能函数,并执行所述功能函数以获取执行结果;
所述客户端将所述执行结果和所述回调函数的名称发送给所述前端页面,所述前端页面根据所述执行结果运行所述回调函数。
2.根据权利要求1所述的方法,其特征在于,
在接收到多个前端页面发送的所述命令名称和所述回调函数的名称时,所述客户端根据先后顺序读取各前端页面发送的所述命令名称和所述回调函数的名称。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
各前端页面生成自身的页面标识;
所述客户端在执行所述功能函数后,将执行结果发送至各页面标识对应的前端页面。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:所述客户端生成各前端页面的页面标识;所述客户端在执行所述功能函数后,将执行结果发送至各页面标识对应的前端页面。
5.根据权利要求1所述的方法,其特征在于,所述对应关系表通过哈希函数生成。
6.一种客户端与前端页面之间的数据通信装置,其特征在于,包括:
建立单元,用于建立与所述前端页面的通信接口,其中,所述通信接口中包括命令名称与功能函数的对应关系表;
读取单元,用于通过所述通信接口接收并读取所述前端页面发送的命令名称和回调函数的名称;
确定单元,用于根据所述对应关系表确定所述命令名称对应的功能函数,并执行所述功能函数以获取执行结果;
第一发送单元,用于将所述执行结果和所述回调函数的名称发送给所述前端页面,所述前端页面根据所述执行结果运行所述回调函数。
7.根据权利要求6所述的装置,其特征在于,所述读取单元根据先后顺序读取各前端页面发送的所述命令名称和所述回调函数的名称。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
执行单元,用于执行所述功能函数后,将执行结果发送至各页面标识对应的前端页面,其中,各前端页面生成自身的页面标识。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
生成单元,用于生成各前端页面的页面标识;
第二发送单元,用于在执行所述功能函数后,将执行结果发送至各页面标识对应的前端页面。
10.根据权利要求6所述的装置,其特征在于,所述对应关系表通过哈希函数生成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410183497.5A CN103957211B (zh) | 2014-04-30 | 2014-04-30 | 客户端与前端页面之间的数据通信方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410183497.5A CN103957211B (zh) | 2014-04-30 | 2014-04-30 | 客户端与前端页面之间的数据通信方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103957211A CN103957211A (zh) | 2014-07-30 |
CN103957211B true CN103957211B (zh) | 2017-06-30 |
Family
ID=51334437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410183497.5A Active CN103957211B (zh) | 2014-04-30 | 2014-04-30 | 客户端与前端页面之间的数据通信方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103957211B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105554094B (zh) * | 2015-12-11 | 2019-03-08 | 北京奇虎科技有限公司 | 数据交互方法及装置 |
CN106202537A (zh) * | 2016-07-26 | 2016-12-07 | 江苏神州信源系统工程有限公司 | 一种实现跨浏览器前端与终端本地交互的方法 |
CN109213606A (zh) * | 2017-06-29 | 2019-01-15 | 北京京东尚科信息技术有限公司 | 一种数据交互的方法和装置 |
CN111443946B (zh) * | 2020-03-09 | 2024-03-15 | 深圳市伊欧乐科技有限公司 | Ios系统与页面的交互方法、系统、服务器和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008003699A1 (en) * | 2006-07-07 | 2008-01-10 | International Business Machines Corporation | Method for inheriting a wiki page layout for a wiki page |
CN103067454A (zh) * | 2012-12-14 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | 一种集成网页页面与客户端信息的交互方法及装置 |
CN103379127A (zh) * | 2012-04-12 | 2013-10-30 | 阿里巴巴集团控股有限公司 | 服务器与客户端间的数据交互方法及装置 |
-
2014
- 2014-04-30 CN CN201410183497.5A patent/CN103957211B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008003699A1 (en) * | 2006-07-07 | 2008-01-10 | International Business Machines Corporation | Method for inheriting a wiki page layout for a wiki page |
CN103379127A (zh) * | 2012-04-12 | 2013-10-30 | 阿里巴巴集团控股有限公司 | 服务器与客户端间的数据交互方法及装置 |
CN103067454A (zh) * | 2012-12-14 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | 一种集成网页页面与客户端信息的交互方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103957211A (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103957211B (zh) | 客户端与前端页面之间的数据通信方法及装置 | |
WO2021042515A1 (zh) | 图数据存储和查询方法、装置及计算机可读存储介质 | |
CN102737065B (zh) | 数据的获取方法和装置 | |
JP2019504412A (ja) | ショートリンクの処理方法、デバイス、及びサーバ | |
US10691362B2 (en) | Key-based memory deduplication protection | |
CN104462051B (zh) | 分词方法及装置 | |
KR102084300B1 (ko) | 서비스 구현 | |
US11019012B2 (en) | File sending in instant messaging application | |
WO2015101113A1 (zh) | 处理报文的方法与设备 | |
CN107454147A (zh) | 信息处理方法及装置 | |
US10375168B2 (en) | Throughput in openfabrics environments | |
US9876776B2 (en) | Methods for generating and publishing a web site based on selected items and devices thereof | |
CN111611621A (zh) | 基于区块链的分布式数据加密存储方法和电子设备 | |
EP3286665A1 (en) | Rich attachment regeneration | |
Hussein et al. | An efficient ElGamal cryptosystem scheme | |
CN105204782B (zh) | 一种实现数据存储的方法及装置 | |
US11455431B2 (en) | Secure PUF-based device authentication using adversarial challenge selection | |
WO2018177286A1 (zh) | 一种静态资源请求处理方法及装置 | |
CN116633688B (zh) | 一种aigc服务隐私保护方法和设备 | |
CN103490982B (zh) | 一种消息的处理方法和装置 | |
US11783123B1 (en) | Generating a dynamic template for transforming source data | |
CN109302503A (zh) | 签名档的生成方法、签名档模板的分享方法及装置 | |
CN107391541A (zh) | 一种实时数据合并方法和装置 | |
CN105740442A (zh) | 一种HBase中的数据存储方法 | |
CN107992456B (zh) | 版式数据流文件多终端本地化闪存系统、方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |