CN111880953A - 一种应用程序通信方法、装置、电子设备及存储介质 - Google Patents
一种应用程序通信方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111880953A CN111880953A CN202010764811.4A CN202010764811A CN111880953A CN 111880953 A CN111880953 A CN 111880953A CN 202010764811 A CN202010764811 A CN 202010764811A CN 111880953 A CN111880953 A CN 111880953A
- Authority
- CN
- China
- Prior art keywords
- server
- authentication information
- application program
- browser
- application
- 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 57
- 238000004891 communication Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 16
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 15
- 230000006870 function Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种应用程序通信方法、装置、电子设备及存储介质,用于改善使用多个企业系统软件时需要手动切换应用程序的问题。该应用程序通信方法包括:通过电子设备的第一应用程序接收第一服务器发送的认证信息,认证信息是第二服务器向第一服务器发送获得的;通过第一应用程序将认证信息转发至电子设备的第二应用程序;通过第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应,第一服务器和第二服务器是不同的服务器;通过第二应用程序接收第二服务器发送的目标信息。
Description
技术领域
本申请涉及计算机数据处理和数据交互的技术领域,具体而言,涉及一种应用程序通信方法、装置、电子设备及存储介质。
背景技术
企业资源规划(Enterprise Resource Planning,ERP)系统软件,又称ERP系统软件,ERP系统或简称ERP,是一个创建在信息技术基础上的系统化管理思想,为企业决策层及员工提供决策运行手段的管理平台的企业系统软件。
客户关系管理(Customer Relationship Management,CRM)系统软件,又称CRM系统软件,CRM系统或简称CRM,是指为企业从各种不同的角度来了解及区别顾客,以发展出适合顾客个别需要之产品或服务的一种企业程序与信息技术的组合模式的系统软件。
在目前的应用程序通信环境中,应用程序运行于电子设备中,该电子设备通常需要与多个企业系统软件交互,这里的多个企业系统软件例如:ERP系统软件和CRM系统软件等等。这里的每个企业系统软件的电子设备的应用程序要求各不相同,具体例如:ERP软件需要电子设备上的第一应用程序(例如:Chrome浏览器)才能正常运行,而CRM软件需要在第二应用程序(例如:InternetExplorer浏览器,即IE浏览器)中才能正常运行。因此,由于各个企业系统软件需要不同浏览器支持,导致用户在使用多个企业系统软件时需要手动切换应用程序。
发明内容
本申请实施例的目的在于提供一种应用程序通信方法、装置、电子设备及存储介质,用于改善使用多个企业系统软件时需要手动切换应用程序的问题。
本申请实施例提供了一种应用程序通信方法,包括:通过电子设备的第一应用程序接收第一服务器发送的认证信息,认证信息是第二服务器向第一服务器发送获得的;通过第一应用程序将认证信息转发至电子设备的第二应用程序;通过第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应,第一服务器和第二服务器是不同的服务器;通过第二应用程序接收第二服务器发送的目标信息。在上述的实现过程中,第二服务器向第一服务器发送认证信息,使用电子设备的第一应用程序接收第一服务器发送的认证信息;使用第一应用程序将认证信息转发至电子设备的第二应用程序;使用第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应;再使用第二应用程序接收第二服务器发送的目标信息;也就是说,在跨服务器访问数据时,通过应用程序的自动转发认证信息,来达到服务器在确定认证信息有效后发送目标信息,有效地避免了在使用多个企业系统软件时需要手动切换应用程序来获得目标信息的情况。
可选地,在本申请实施例中,第一应用程序为第一浏览器,第二应用程序为第二浏览器,第一浏览器的内核与第二浏览器的内核不同;通过第一应用程序将认证信息转发至电子设备的第二应用程序,包括:通过第一浏览器调用电子设备的本地服务;通过电子设备的本地服务将认证信息转发至电子设备的第二浏览器。在上述的实现过程中,通过第一浏览器调用电子设备的本地服务,并使用电子设备的本地服务将认证信息转发至电子设备的第二浏览器;从而有效地提高了通过第一应用程序将认证信息转发至电子设备的第二应用程序的速度。
可选地,在本申请实施例中,通过第一浏览器调用电子设备的本地服务,包括:获得第一浏览器的助手插件;使用第一浏览器的助手插件调用电子设备的本地服务。在上述的实现过程中,通过获得第一浏览器的助手插件;使用第一浏览器的助手插件调用电子设备的本地服务;从而有效地提高了通过第一应用程序将认证信息转发至电子设备的第二应用程序的速度。
可选地,在本申请实施例中,在通过第一应用程序将认证信息转发至电子设备的第二应用程序之前,还包括:通过第一应用程序接收第一服务器或第二服务器发送的配置信息,配置信息包括第二应用程序的唯一标识;通过第一应用程序将认证信息转发至电子设备的第二应用程序,包括:通过第一应用程序根据第二应用程序的唯一标识将认证信息转发至电子设备的第二应用程序。在上述的实现过程中,通过第一应用程序接收第一服务器或第二服务器发送的第二应用程序的唯一标识,通过第一应用程序根据第二应用程序的唯一标识将认证信息转发至电子设备的第二应用程序,从而有效地提高了通过第一应用程序将认证信息转发至电子设备的第二应用程序的灵活性。
可选地,在本申请实施例中,认证信息包括:令牌标识和链接地址;通过第二应用程序向第二服务器发送认证信息,包括:解析链接地址,获得第二服务器的域名地址;根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识。在上述的实现过程中,通过解析链接地址,获得第二服务器的域名地址;根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识;从而有效地提高了电子设备获得链接地址和令牌标识的速度。
可选地,在本申请实施例中,通过电子设备的第一应用程序接收第一服务器发送的认证信息,包括:通过第一应用程序接收第一服务器发送的令牌标识,令牌标识是通过第二服务器的登录接口向第一服务器发送获得的;通过第一应用程序接收第一服务器发送的链接地址,链接地址是通过第二服务器的数据接口向第一服务器发送获得的。在上述的实现过程中,在第二服务器向第一服务器发送链接地址和令牌标识之后,第一服务器向电子设备发送链接地址和令牌标识,电子设备通过第一应用程序接收第一服务器发送的令牌标识;从而有效地提高了电子设备获得链接地址和令牌标识的速度。
本申请实施例还提供了一种应用程序通信装置,包括:认证信息接收模块,用于通过电子设备的第一应用程序接收第一服务器发送的认证信息,认证信息是第二服务器向第一服务器发送获得的;认证信息转发模块,用于通过第一应用程序将认证信息转发至电子设备的第二应用程序;认证信息发送模块,用于通过第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应,第一服务器和第二服务器是不同的服务器;目标信息接收模块,用于通过第二应用程序接收第二服务器发送的目标信息。在上述的实现过程中,第二服务器向第一服务器发送认证信息,使用电子设备的第一应用程序接收第一服务器发送的认证信息;使用第一应用程序将认证信息转发至电子设备的第二应用程序;使用第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应;再使用第二应用程序接收第二服务器发送的目标信息;也就是说,在跨服务器访问数据时,通过应用程序的自动转发认证信息,来达到服务器在确定认证信息有效后发送目标信息,有效地避免了在使用多个企业系统软件时需要手动切换应用程序来获得目标信息的情况。
可选地,在本申请实施例中,第一应用程序为第一浏览器,第二应用程序为第二浏览器,第一浏览器的内核与第二浏览器的内核不同;认证信息转发模块,包括:本地服务调用模块,用于通过第一浏览器调用电子设备的本地服务;第一信息转发模块,用于通过电子设备的本地服务将认证信息转发至电子设备的第二浏览器。
可选地,在本申请实施例中,本地服务调用模块,包括:助手插件获得模块,用于获得第一浏览器的助手插件;助手插件调用模块,用于使用第一浏览器的助手插件调用电子设备的本地服务。
可选地,在本申请实施例中,应用程序通信装置,还包括:配置信息接收模块,用于通过第一应用程序接收第一服务器或第二服务器发送的配置信息,配置信息包括第二应用程序的唯一标识;第二信息转发模块,用于通过第一应用程序根据第二应用程序的唯一标识将认证信息转发至电子设备的第二应用程序。
可选地,在本申请实施例中,认证信息包括:令牌标识和链接地址;认证信息发送模块,包括:链接地址解析模块,用于解析链接地址,获得第二服务器的域名地址;地址标识发送模块,用于根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识。
可选地,在本申请实施例中,认证信息接收模块,包括:令牌标识接收模块,用于通过第一应用程序接收第一服务器发送的令牌标识,令牌标识是通过第二服务器的登录接口向第一服务器发送获得的;链接地址接收模块,用于通过第一应用程序接收第一服务器发送的链接地址,链接地址是通过第二服务器的数据接口向第一服务器发送获得的。
本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出的本申请实施例提供的应用程序通信方法的示意图;
图2示出的本申请实施例提供的电子设备使用Chrome浏览器与第一服务器通信的示意图;
图3示出的本申请实施例提供的电子设备使用IE浏览器与第二服务器通信的示意图;
图4示出的本申请实施例提供的电子设备与服务器交互的时序图;
图5示出的本申请实施例提供的应用程序通信装置示意图;
图6示出的本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。
在介绍本申请实施例提供的应用程序通信方法之前,先介绍本申请实施例所涉及的一些概念,本申请实施例所涉及的一些概念如下:
应用程序(application program),又被称为应用软件(application software),有时简称应用(app),是电脑软件的主要分类之一,是指为针对用户的某种特殊应用目的所撰写的计算机程序,具体例如:文本处理器、表格、浏览器、媒体播放器和图像编辑器等。
办公自动化(Office Automation,OA),是指应用计算机、电子设备和软件,来数字化地创建、收集、存储、处理,并传播完成办公室任务所需的信息;原始数据的存储,电子转帐和电子业务信息的管理,组成了办公自动化系统的基本活动。
OA系统软件是指能够完成办公自动化的系统功能的软件,也使得任务相关人员能够更加方便快捷地共享信息,高效地协同工作,极大地优化了以往复杂、低效的办公室工作的流程。
浏览器,是指访问服务器上的数据的软件工具,这里的浏览器包括:Firefox浏览器,Chrome浏览器,Safari浏览器,IE浏览器等等,浏览器使用的引擎例如:FirefoxDriver引擎、InternetExplorerDriver引擎和ChromeDriver引擎等,当然,在一些情况下,这里的浏览器引擎也可以是两种或两种以上的引擎共同使用,例如:定制的浏览器共同使用InternetExplorerDriver引擎和ChromeDriver引擎。
超文本传输协议(Hyper Text Transfer Protocol,HTTP),是一个简单的请求响应协议,HTTP协议通常运行在传输控制协议(Transmission Control Protocol,TCP)之上,HTTP协议指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
服务器是指通过网络提供计算服务的设备,服务器例如:x86服务器以及非x86服务器,非x86服务器包括:大型机、小型机和UNIX服务器。当然在具体的实施过程中,上述的服务器可以具体选择大型机或者小型机,这里的小型机是指采用精简指令集计算(ReducedInstruction Set Computing,RISC)、单字长定点指令平均执行速度(MillionInstructions Per Second,MIPS)等专用处理器,主要支持UNIX操作系统的封闭且专用的提供计算服务的设备;这里的大型机,又名大型主机,是指使用专用的处理器指令集、操作系统和应用软件来提供计算服务的设备。
需要说明的是,本申请实施例提供的应用程序通信方法可以被电子设备执行,这里的电子设备是指具有执行计算机程序功能的设备终端或者上述的服务器,设备终端例如:智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personaldigital assistant,PDA)、移动上网设备(mobile Internet device,MID)、网络交换机或网络路由器等。
在介绍本申请实施例提供的应用程序通信方法之前,先介绍该应用程序通信方法适用的应用场景,这里的应用场景包括但不限于:使用该应用程序通信方法跨应用程序访问不同服务器的系统软件,或者使用该应用程序通信方法制作应用程序助手软件,以实现访问不同服务器的系统软件的功能,这里的不同服务器的系统软件例如:ERP系统软件和CRM系统软件等。
请参见图1示出的本申请实施例提供的应用程序通信方法的示意图;该应用程序通信方法可以包括:
步骤S110:电子设备通过第一应用程序接收第一服务器发送的认证信息。
第一应用程序,是指运行于电子设备上的应用程序,这里的应用程序具体例如:文本处理器、表格、浏览器、媒体播放器和图像编辑器等软件。
第一服务器,是指运行第一企业系统软件的服务器,这里的第一企业系统软件可以是ERP系统软件或CRM系统软件等等企业系统软件,第一服务器上运行的第一企业系统软件能够通过第一应用程序来访问,具体例如:这里的第一应用程序为Chrome浏览器,第一企业系统软件为ERP系统软件或CRM系统软件,这里的ERP系统或CRM系统只能通过Chrome浏览器才能正常访问。
认证信息,是指用于授权电子设备访问第二服务器中的目标资源所需认证的信息,具体例如:第二服务器发放给电子设备的临时认证,该临时认证可以用于使电子设备在指定的时间范围内访问第二服务器上的目标资源,这里的临时认证也可以理解为认证信息。上述的认证信息可以是由第二服务器向第一服务器发送获得的,并由第一服务器向电子设备发送该认证信息,这里的认证信息可以包括:令牌标识和链接地址。
上述的步骤S110的实施方式例如可以包括如下步骤:
步骤S111:电子设备通过第一应用程序接收第一服务器发送的令牌标识,令牌标识是通过第二服务器的登录接口向第一服务器发送获得的。
令牌标识(tokenidenty),又被称为身份令牌,是指针对目标资源生成的授权访问令牌的身份标识,具体例如:Windows操作系统使用访问令牌(Access Token)来辨识拥有进程的用户,这里的访问令牌是指Windows操作系统用于描述进程或线程安全上下文的一种对象,这里的访问令牌也可以理解为一种令牌标识。
第二服务器,是指运行第二企业系统软件的服务器,这里的第二企业系统软件可以是OA系统软件等企业系统软件,第二服务器是不同于第一服务器的设备,第二服务器上运行的第二企业系统软件能够通过第二应用程序来访问,具体例如:这里的第二应用程序为IE浏览器,第二企业系统软件为OA系统软件,这里的OA系统只能通过IE浏览器才能正常访问。由上面的描述可知,运行第一企业系统软件的第一服务器和运行第二企业系统软件的第二服务器可以是不同的服务器。
上述的步骤S111的实施方式例如:第二服务器通过登录接口向第一服务器发送令牌标识;第一服务器接收第二服务器发送的令牌标识,并向电子设备发送该令牌标识;电子设备通过第一应用程序接收第一服务器发送的令牌标识;其中,这里的登录接口有很多种实施方式,具体例如:通过表现层状态转换(Representational State Transfer,REST)框架来提供登录接口,这里的登录接口的相对地址例如可以为/auth/login等;这里的REST又被RESTful,是指一种万维网软件架构风格,目的是便于不同软件/程序在网络(例如互联网)中互相传递信息。表现层状态转换是根基于HTTP协议之上而确定的一组约束和属性,是一种设计提供万维网络服务的软件构建风格。
步骤S112:电子设备通过第一应用程序接收第一服务器发送的链接地址,链接地址是通过第二服务器的数据接口向第一服务器发送获得的。
上述的步骤S112的实施方式例如:第二服务器通过数据接口向第一服务器发送链接地址;第一服务器接收第二服务器发送的链接地址,并向电子设备发送该链接地址;电子设备通过第一应用程序接收第一服务器发送的链接地址;其中,这里的数据接口有很多种实施方式,具体例如:通过简单对象访问协议(Simple Object Access Protocol,SOAP)来提供数据接口,这里的数据接口的相对地址例如可以为/data/get等;这里SOAP的是一种基于可扩展标记语言(eXtensible Markup Language,XML)的协议,可以和现存的许多因特网协议和格式结合使用,现存的许多因特网协议包括:超文本传输协议(HyperText TransferProtocol,HTTP),简单邮件传输协议(Simple Mail Transfer Protocol,SMTP),多用途网际邮件扩充协议(Multipurpose Internet Mail Extensions,MIME),基于非常通用的传输协议是SOAP的一个优点。
在上述的实现过程中,在第二服务器向第一服务器发送链接地址和令牌标识之后,第一服务器向电子设备发送链接地址和令牌标识,电子设备通过第一应用程序接收第一服务器发送的令牌标识;从而有效地提高了电子设备获得链接地址和令牌标识的速度。
在步骤S110之后,执行步S120:电子设备通过第一应用程序将认证信息转发至电子设备的第二应用程序。
可以理解的是,上述的第一应用程序可以为第一浏览器,第二应用程序可以为第二浏览器,第一浏览器的内核与第二浏览器的内核可以是不相同的;具体例如:第一应用程序为Chrome浏览器、Safari浏览器或者Firefox浏览器,第二应用程序为IE浏览器,也就是说,第一应用程序和第二应用程序均为浏览器,但两者的内核不同,即两者是不同的浏览器。
上述的通过第一应用程序将认证信息转发至电子设备的第二应用程序的实施方式包括:
第一种实施方式,认证信息中还包括目标应用程序的唯一标识,那么可以根据目标应用程序的唯一标识发送认证信息,当然,这里的目标应用程序可以是第二应用程序。
第二种实施方式,第一应用程序中已经包括执行程序“若接收到的信息为认证信息,则通过第一应用程序将认证信息转发第二应用程序”。
第三种实施方式,在转发认证信息之前,从第一服务器或者第二服务器接收配置信息,从而第一应用程序将认证信息发送给配置信息中指定的第二应用程序;该实施方式具体可以包括:电子设备通过第一应用程序接收第一服务器或第二服务器发送的配置信息,配置信息包括第二应用程序的唯一标识;电子设备通过第一应用程序接收第一服务器发送的认证信息;电子设备通过第一应用程序根据第二应用程序的唯一标识将认证信息转发至电子设备的第二应用程序。在上述的实现过程中,通过第一应用程序接收第一服务器或第二服务器发送的第二应用程序的唯一标识,通过第一应用程序根据第二应用程序的唯一标识将认证信息转发至电子设备的第二应用程序,从而有效地提高了通过第一应用程序将认证信息转发至电子设备的第二应用程序的灵活性。
第四种实施方式,通过调用电子设备的本地服务来将认证信息转发至电子设备的第二浏览器;为了便于理解和说明,下面以第三种实施方式为例进行说明。
步骤S121:电子设备通过第一浏览器调用电子设备的本地服务。
本地服务,是指本地启动的web服务,常见的web服务例如:Node.js服务、Tomcat服务、Nginx服务或者Lighttpd服务等;这里的Web服务(Web service)是一种服务导向架构的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用服务可以互操作;Web服务也是一个软件系统,用以支持网络间不同机器的互动操作的网络服务;网络服务通常是许多应用程序接口所组成的,网络服务能够透过网络,具体例如:透过国际互联网的远程服务器端,并执行客户所提交服务的请求。
上述的通过第一浏览器调用电子设备的本地服务的实施方式例如:获得第一浏览器的助手插件;使用第一浏览器的助手插件调用电子设备的本地服务;其中,这里的本地服务包括:Node.js服务、Tomcat服务、Nginx服务或者Lighttpd服务,第一浏览器可以是chrome浏览器,助手插件例如可以是chrome浏览器助手插件或者致远浏览器助手插件等。在上述的实现过程中,通过获得第一浏览器的助手插件;使用第一浏览器的助手插件调用电子设备的本地服务;从而有效地提高了通过第一应用程序将认证信息转发至电子设备的第二应用程序的速度。
步骤S122:电子设备通过本地服务将认证信息转发至电子设备的第二浏览器。
上述的电子设备通过本地服务将认证信息转发至电子设备的第二浏览器的实施方式例如:电子设备通过Tomcat服务中的Servlet服务将认证信息转发至电子设备的第二浏览器,第二浏览器可以是IE浏览器,通过IE浏览器获得Servlet服务转发的认证信息。
当然,在具体的实施过程中,上述将认证信息转发至电子设备的第二浏览器的实施方式还包括:可以通过windows操作系统注册自定义统一资源定位系统(UniformResource Locator,URL)协议的方式打开第二浏览器的进程,并将认证信息转发至电子设备的第二浏览器的进程;该实施方式具体例如:若电子设备的操作系统为windows操作系统,那么可以注册表HKEY_CLASSES_ROOT项下加入对应的子项,子项的内容包括:URL协议名称,以及打开协议的程序文件图标、程序文件所在路径和程序文件所需要的参数等等;其中,URL协议名称例如为test,那么可以在注册表HKEY_CLASSES_ROOT\test项下添加URL:test protocol,在注册表HKEY_CLASSES_ROOT\test\Shell\Open\Command项下添加程序文件所在路径和程序文件所需要的参数,这里的程序文件可以是第二浏览器;然后第一浏览器使用自定义的test协议即可将认证信息转发至第二浏览器,具体例如:在第一浏览器中输入认证信息后,windows操作系统便会调用第二浏览器接收认证信息,这里的认证信息例如可以是test://start/123,当然这里的认证信息可以根据情况进行具体设置,因此,这里的认证信息的具体内容不应理解为对本申请实施例的限制。
在上述的实现过程中,通过第一浏览器调用电子设备的本地服务,并使用电子设备的本地服务将认证信息转发至电子设备的第二浏览器;从而有效地提高了通过第一应用程序将认证信息转发至电子设备的第二应用程序的速度。
在步骤S120之后,执行步骤S130:电子设备通过第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应。
目标信息,是指在认证信息被确认后,电子设备所需要的且与认证信息对应的目标信息,这里的目标信息例如可以是:表单数据、设备信息数据、图片或者视频等等信息。
上述的通过第二应用程序向第二服务器发送认证信息的实施方式可以包括如下步骤:
步骤S131:电子设备解析链接地址,获得第二服务器的域名地址。
上述的步骤S131的实施方式例如:若链接地址为http://www.B.com/b1?token=xx,那么解析该链接地址,可以获得该链接地址对应的域名地址为www.B.com;当然,在具体的实施过程中,还可以进一步解析该域名地址,例如:向域名服务器发送包含www.B.com域名解析请求,获得该域名地址对应的IP地址为220.220.220.220;再根据该IP地址向第二服务器发送链接地址和令牌标识。
步骤S132:电子设备根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识。
上述的电子设备根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识的实施方式例如:电子设备通过异步JavaScript和XML(Asynchronous JavascriptAnd XML,AJAX)根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识,这里的AJAX是指一种创建交互式网页应用的网页开发技术,也是一种用于创建快速动态网页的技术,在无需重新加载整个网页的情况下,能够更新部分网页的技术。
在上述的实现过程中,通过解析链接地址,获得第二服务器的域名地址;根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识;从而有效地提高了电子设备获得链接地址和令牌标识的速度。
在步骤S130之后,执行步骤S140:电子设备通过第二应用程序接收第二服务器发送的目标信息。
上述的电子设备通过第二应用程序接收第二服务器发送的目标信息的实施方式例如:电子设备通过第二应用程序使用超文本传输安全协议(HyperText TransferProtocol Secure,HTTPS)接收第二服务器发送的目标信息;其中,这里的HTTPS又称为HTTPSecure,是一种通过计算机网络进行安全通信的传输协议;HTTPS开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。
在上述的实现过程中,第二服务器向第一服务器发送认证信息,使用电子设备的第一应用程序接收第一服务器发送的认证信息;使用第一应用程序将认证信息转发至电子设备的第二应用程序;使用第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应;再使用第二应用程序接收第二服务器发送的目标信息;也就是说,在跨服务器访问数据时,通过应用程序的自动转发认证信息,来达到服务器在确定认证信息有效后发送目标信息,有效地避免了在使用多个企业系统软件时需要手动切换应用程序来获得目标信息的情况。
为了便于理解电子设备的操作用户的便捷性,下面举例说明电子设备的用户的具体操作,这里的用户的具体操作包括:
请参见图2示出的本申请实施例提供的电子设备使用Chrome浏览器与第一服务器通信的示意图;若电子设备的第一应用程序为Chrome浏览器,第二应用程序为IE浏览器,第一服务器的域名为www.A.com,第二服务器的域名为www.B.com,第一企业系统为A系统,第二企业系统为B系统;用户启动电子设备上的Chrome浏览器,使用Chrome浏览器接收第一服务器发送的链接地址,并在Chrome浏览器中打开A系统的链接地址访问第一服务器,用户可处理该系统的流程业务,如“待办工作”处理,而其中用到单据b1、b2、b3、b4均来源于B系统,用户可以在Chrome浏览器上点击A系统里的单据b1。
请参见图3示出的本申请实施例提供的电子设备使用IE浏览器与第二服务器通信的示意图;当用户点击在Chrome浏览器上点击A系统里的单据b1时,跳出的链接地址为http://www.B.com/b1?token=xx,这里的token可以理解为访问令牌,而xx可以理解为访问令牌的具体值,即令牌标识为xx,电子设备自动启动IE浏览器,打开B系统,将用户点击的b1单据显示在界面上,此时,用户可在B系统中对单据b1进行操作;待单据b1处理完成后,关闭IE浏览器窗口。
请参见图4示出的本申请实施例提供的电子设备与服务器交互的时序图;为了便于理解和说明,下面使用不同的浏览器跨企业系统访问的例子说明应用程序通信方法的其中一种实施方式如下:
步骤S210:第一服务器向第二服务器发送信息请求,该信息请求用于获取令牌标识和链接地址。
步骤S220:第二服务器向第一服务器发送令牌标识和链接地址。
步骤S230:第一服务器接收第二服务器发送的令牌标识和链接地址,并向电子设备发送令牌标识和链接地址。
步骤S240:电子设备接收第一服务器发送的令牌标识和链接地址,并根据链接地址向第二服务器发送令牌标识和链接地址,以使第二服务器获得并发送与令牌标识对应的目标信息。
步骤S250:电子设备接收第二服务器发送的目标信息。
可以理解的是,上述的步骤S210至步骤S250中的发送动作和接收动作的实施原理与上述步骤中的发送和接收的实施原理是相似或类似的,均可以采用HTTP协议或HTTPS协议等方式进行发送和接收,只是发送的内容不同,因此,这里不再对具体过程进行赘述。
在上述的实现过程中,在第一服务器接收第二服务器发送的令牌标识和链接地址之后,第一服务器向电子设备发送令牌标识和链接地址;电子设备接收第一服务器发送的令牌标识和链接地址,并根据链接地址向第二服务器发送令牌标识和链接地址,以使第二服务器获得并发送与令牌标识对应的目标信息,电子设备通过这种方式完成了跨服务器获取到所需的目标信息;从而让电子设备在多个企业系统进行业务对接时,跨浏览器和跨服务器web系统带来的问题,最终实现多个企业系统的无缝连接。
请参见图5示出的本申请实施例提供的应用程序通信装置示意图;本申请实施例提供了一种应用程序通信装置300,包括:
认证信息接收模块310,用于通过电子设备的第一应用程序接收第一服务器发送的认证信息,认证信息是第二服务器向第一服务器发送获得的。
认证信息转发模块320,用于通过第一应用程序将认证信息转发至电子设备的第二应用程序。
认证信息发送模块330,用于通过第二应用程序向第二服务器发送认证信息,以使第二服务器获得并发送目标信息,目标信息与认证信息对应,第一服务器和第二服务器是不同的服务器。
目标信息接收模块340,用于通过第二应用程序接收第二服务器发送的目标信息。
可选地,在本申请实施例中,第一应用程序为第一浏览器,第二应用程序为第二浏览器,第一浏览器的内核与第二浏览器的内核不同;认证信息转发模块,包括:
本地服务调用模块,用于通过第一浏览器调用电子设备的本地服务。
第一信息转发模块,用于通过电子设备的本地服务将认证信息转发至电子设备的第二浏览器。
可选地,在本申请实施例中,本地服务调用模块,包括:
助手插件获得模块,用于获得第一浏览器的助手插件。
助手插件调用模块,用于使用第一浏览器的助手插件调用电子设备的本地服务。
可选地,在本申请实施例中,应用程序通信装置,还包括:
配置信息接收模块,用于通过第一应用程序接收第一服务器或第二服务器发送的配置信息,配置信息包括第二应用程序的唯一标识。
第二信息转发模块,用于通过第一应用程序根据第二应用程序的唯一标识将认证信息转发至电子设备的第二应用程序。
可选地,在本申请实施例中,认证信息包括:令牌标识和链接地址;认证信息发送模块,包括:
链接地址解析模块,用于解析链接地址,获得第二服务器的域名地址。
地址标识发送模块,用于根据第二服务器的域名地址向第二服务器发送链接地址和令牌标识。
可选地,在本申请实施例中,认证信息接收模块,包括:
令牌标识接收模块,用于通过第一应用程序接收第一服务器发送的令牌标识,令牌标识是通过第二服务器的登录接口向第一服务器发送获得的。
链接地址接收模块,用于通过第一应用程序接收第一服务器发送的链接地址,链接地址是通过第二服务器的数据接口向第一服务器发送获得的。
应理解的是,该装置与上述的应用程序通信方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作系统(operating system,OS)中的软件功能模块。
请参见图6示出的本申请实施例提供的电子设备的结构示意图。本申请实施例提供的一种电子设备400,包括:处理器410和存储器420,存储器420存储有处理器410可执行的机器可读指令,机器可读指令被处理器410执行时执行如上的方法。
本申请实施例还提供了一种存储介质430,该存储介质430上存储有计算机程序,该计算机程序被处理器410运行时执行如上的应用程序通信方法。
其中,存储介质430可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请实施例各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (10)
1.一种应用程序通信方法,其特征在于,应用于电子设备,包括:
通过所述电子设备的第一应用程序接收第一服务器发送的认证信息,所述认证信息是第二服务器向所述第一服务器发送获得的;
通过所述第一应用程序将所述认证信息转发至所述电子设备的第二应用程序;
通过所述第二应用程序向所述第二服务器发送所述认证信息,以使所述第二服务器获得并发送目标信息,所述目标信息与所述认证信息对应,所述第一服务器和所述第二服务器是不同的服务器;
通过所述第二应用程序接收所述第二服务器发送的所述目标信息。
2.根据权利要求1所述的方法,其特征在于,所述第一应用程序为第一浏览器,所述第二应用程序为第二浏览器,所述第一浏览器的内核与所述第二浏览器的内核不同;所述通过所述第一应用程序将所述认证信息转发至所述电子设备的第二应用程序,包括:
通过所述第一浏览器调用所述电子设备的本地服务;
通过所述电子设备的本地服务将所述认证信息转发至所述电子设备的第二浏览器。
3.根据权利要求2所述的方法,其特征在于,所述通过所述第一浏览器调用所述电子设备的本地服务,包括:
获得所述第一浏览器的助手插件;
使用所述第一浏览器的助手插件调用所述电子设备的本地服务。
4.根据权利要求1所述的方法,其特征在于,在所述通过所述第一应用程序将所述认证信息转发至所述电子设备的第二应用程序之前,还包括:
通过所述第一应用程序接收所述第一服务器或所述第二服务器发送的配置信息,所述配置信息包括所述第二应用程序的唯一标识;
所述通过所述第一应用程序将所述认证信息转发至所述电子设备的第二应用程序,包括:
通过所述第一应用程序根据所述第二应用程序的唯一标识将所述认证信息转发至所述电子设备的第二应用程序。
5.根据权利要求1-4任一所述的方法,其特征在于,所述认证信息包括:令牌标识和链接地址;所述通过所述第二应用程序向所述第二服务器发送所述认证信息,包括:
解析所述链接地址,获得所述第二服务器的域名地址;
根据所述第二服务器的域名地址向所述第二服务器发送所述链接地址和所述令牌标识。
6.根据权利要求5所述的方法,其特征在于,所述通过所述电子设备的第一应用程序接收第一服务器发送的认证信息,包括:
通过所述第一应用程序接收所述第一服务器发送的所述令牌标识,所述令牌标识是通过所述第二服务器的登录接口向所述第一服务器发送获得的;
通过所述第一应用程序接收所述第一服务器发送的链接地址,所述链接地址是通过所述第二服务器的数据接口向所述第一服务器发送获得的。
7.一种应用程序通信装置,其特征在于,应用于电子设备,包括:
认证信息接收模块,用于通过所述电子设备的第一应用程序接收第一服务器发送的认证信息,所述认证信息是第二服务器向所述第一服务器发送获得的;
认证信息转发模块,用于通过所述第一应用程序将所述认证信息转发至所述电子设备的第二应用程序;
认证信息发送模块,用于通过所述第二应用程序向所述第二服务器发送所述认证信息,以使所述第二服务器获得并发送目标信息,所述目标信息与所述认证信息对应,所述第一服务器和所述第二服务器是不同的服务器;
目标信息接收模块,用于通过所述第二应用程序接收所述第二服务器发送的所述目标信息。
8.根据权利要求7所述的装置,其特征在于,所述第一应用程序为第一浏览器,所述第二应用程序为第二浏览器,所述第一浏览器的内核与所述第二浏览器的内核不同;所述认证信息转发模块,包括:
本地服务调用模块,用于通过所述第一浏览器调用所述电子设备的本地服务;
第一信息转发模块,用于通过所述电子设备的本地服务将所述认证信息转发至所述电子设备的第二浏览器。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至6任一所述的方法。
10.一种存储介质,其特征在于,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010764811.4A CN111880953A (zh) | 2020-07-31 | 2020-07-31 | 一种应用程序通信方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010764811.4A CN111880953A (zh) | 2020-07-31 | 2020-07-31 | 一种应用程序通信方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111880953A true CN111880953A (zh) | 2020-11-03 |
Family
ID=73205407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010764811.4A Pending CN111880953A (zh) | 2020-07-31 | 2020-07-31 | 一种应用程序通信方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111880953A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024067419A1 (zh) * | 2022-09-28 | 2024-04-04 | 中移(成都)信息通信科技有限公司 | 授权信息获取方法、装置、相关设备及存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020194219A1 (en) * | 2001-04-17 | 2002-12-19 | Bradley George Wesley | Method and system for cross-platform form creation and deployment |
CN105389222A (zh) * | 2015-12-15 | 2016-03-09 | 中国科学院声学研究所 | 一种动态调用原生接口的方法、装置和系统 |
CN105844386A (zh) * | 2016-03-17 | 2016-08-10 | 中山艾华企业管理咨询有限公司 | 一种基于浏览器服务器模式的企业数据系统 |
CN106528659A (zh) * | 2016-10-19 | 2017-03-22 | 广东欧珀移动通信有限公司 | 浏览器跳转至应用程序的控制方法及装置 |
US20180006818A1 (en) * | 2015-10-28 | 2018-01-04 | Tencent Technology (Shenzhen) Company Limited | Authentication method, device, server, and system, and storage medium |
CN109768965A (zh) * | 2018-12-14 | 2019-05-17 | 广州华多网络科技有限公司 | 一种服务器的登录方法、设备及存储装置 |
US20190155668A1 (en) * | 2016-07-27 | 2019-05-23 | Alibaba Group Holding Limited | Awakening an application by means of a mobile browser |
US10462216B1 (en) * | 2018-05-04 | 2019-10-29 | Citrix Systems, Inc. | WebRTC API redirection with interception techniques |
CN111226429A (zh) * | 2018-09-21 | 2020-06-02 | 思杰系统有限公司 | 经由嵌入式浏览器拦截和增强saas应用调用的系统和方法 |
CN111290865A (zh) * | 2020-02-10 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 一种服务调用方法、装置、电子设备和存储介质 |
CN111352740A (zh) * | 2018-12-21 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 一种应用交互处理方法和装置 |
US20210081521A1 (en) * | 2019-09-16 | 2021-03-18 | Didi Research America, Llc | Method for exchanging data between a web browser and an application |
-
2020
- 2020-07-31 CN CN202010764811.4A patent/CN111880953A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020194219A1 (en) * | 2001-04-17 | 2002-12-19 | Bradley George Wesley | Method and system for cross-platform form creation and deployment |
US20180006818A1 (en) * | 2015-10-28 | 2018-01-04 | Tencent Technology (Shenzhen) Company Limited | Authentication method, device, server, and system, and storage medium |
CN105389222A (zh) * | 2015-12-15 | 2016-03-09 | 中国科学院声学研究所 | 一种动态调用原生接口的方法、装置和系统 |
CN105844386A (zh) * | 2016-03-17 | 2016-08-10 | 中山艾华企业管理咨询有限公司 | 一种基于浏览器服务器模式的企业数据系统 |
US20190155668A1 (en) * | 2016-07-27 | 2019-05-23 | Alibaba Group Holding Limited | Awakening an application by means of a mobile browser |
CN106528659A (zh) * | 2016-10-19 | 2017-03-22 | 广东欧珀移动通信有限公司 | 浏览器跳转至应用程序的控制方法及装置 |
US10462216B1 (en) * | 2018-05-04 | 2019-10-29 | Citrix Systems, Inc. | WebRTC API redirection with interception techniques |
CN111226429A (zh) * | 2018-09-21 | 2020-06-02 | 思杰系统有限公司 | 经由嵌入式浏览器拦截和增强saas应用调用的系统和方法 |
CN109768965A (zh) * | 2018-12-14 | 2019-05-17 | 广州华多网络科技有限公司 | 一种服务器的登录方法、设备及存储装置 |
CN111352740A (zh) * | 2018-12-21 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 一种应用交互处理方法和装置 |
US20210081521A1 (en) * | 2019-09-16 | 2021-03-18 | Didi Research America, Llc | Method for exchanging data between a web browser and an application |
CN111290865A (zh) * | 2020-02-10 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 一种服务调用方法、装置、电子设备和存储介质 |
Non-Patent Citations (3)
Title |
---|
"链路容量调整机制在大数据通信网建设中的应用研究", 《东北电力技术》 * |
XINXIN LI 等: "Modeling Web Application for cross-browser Compatibility Testing", 《IEEE》 * |
马行 等: "应用系统跨浏览器认证方法研究与实现", 《DOI:10.16184/J.CNKI.COMPRG.2019.08.060》, pages 1 - 3 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024067419A1 (zh) * | 2022-09-28 | 2024-04-04 | 中移(成都)信息通信科技有限公司 | 授权信息获取方法、装置、相关设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220276910A1 (en) | Dynamically integrating a client application with third-party services | |
US12197967B2 (en) | Late connection binding for bots | |
US11522851B2 (en) | Secured rest execution inside headless web application | |
US10708252B2 (en) | Configuring credentials to faciltate sharing data in a secure manner | |
US11799841B2 (en) | Providing intercommunication within a system that uses disparate authentication technologies | |
US9189649B2 (en) | Security model for workflows aggregating third party secure services | |
US8380747B2 (en) | System and method for seamlessly integrating separate information systems within an application | |
JP5893641B2 (ja) | ソフトウェアアプリケーションのエンドユーザにアシスタンスを提供する方法 | |
US8886819B1 (en) | Cross-domain communication in domain-restricted communication environments | |
US10367890B2 (en) | Maintain single session with a single application across multiple clients | |
US20220303279A1 (en) | Method, apparatus, and computer program product for installing and updating third party applications requiring variable host address identification in a group-based communication system | |
US20200374280A1 (en) | Secure web application delivery platform | |
JP7397174B2 (ja) | モバイルデジタル通貨先物為替のためのシステム及び方法 | |
US8103607B2 (en) | System comprising a proxy server including a rules engine, a remote application server, and an aspect server for executing aspect services remotely | |
US10733036B2 (en) | Programmatic implementations generated from an API call log | |
Aguilar | SignalR Programming in Microsoft ASP. NET | |
EP2904740B1 (en) | Method and system for communicating within a messaging architecture using a structured data object | |
US8799515B1 (en) | Rewriting of client-side executed scripts in the operation of an SSL VPN | |
CN111880953A (zh) | 一种应用程序通信方法、装置、电子设备及存储介质 | |
US11343242B2 (en) | Dynamic connection across systems in real-time | |
US12095764B2 (en) | Authentication interface rendering and mirroring in a distributed architecture | |
US20190279157A1 (en) | Automated business transaction creation for email system | |
WO2022250642A1 (ru) | Способ и система для совместного просмотра веб-страницы | |
US11755681B2 (en) | Real-time equivalent user interaction generation | |
CN113824696B (zh) | portal认证方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |