CN106897416A - 一种交互方法、装置及系统 - Google Patents
一种交互方法、装置及系统 Download PDFInfo
- Publication number
- CN106897416A CN106897416A CN201710095567.5A CN201710095567A CN106897416A CN 106897416 A CN106897416 A CN 106897416A CN 201710095567 A CN201710095567 A CN 201710095567A CN 106897416 A CN106897416 A CN 106897416A
- Authority
- CN
- China
- Prior art keywords
- models
- call request
- locally applied
- web application
- application end
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例提供了一种交互方法、装置及系统,该交互方法包括:根据WEB应用端发送的调用请求,在预先设定的业务模型中确定目标业务模型,以及将在WEB应用端中确定JS模型注入到目标业务模型中,利用注入了JS模型后的目标模型,通过预先设定的业务协议调用与调用请求相对应的本地应用,以使本地应用进行运行,并将运行结果发送给WEB应用端。通过上述过程可知,本方案可以直接在业务模型中确定与调用请求对应的目标模型,并利用注入与调用请求对应JS模型的目标模型调用本地应用,以使WEB应用端获取本地应用的运行结果,因此,本方案能够提高交互的方便性。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种交互方法、装置及系统。
背景技术
随着移动互联网的不断发展,WEB应用端得到了广泛的使用。其中,WEB应用端为基于网页技术开发的,能够现特定功能的程序。WEB应用端安装于手机或电脑的本地系统中。在一些使用场景中,WEB应用端需要与手机或电脑中的本地应用进行交互。
目前,WEB应用端与手机或电脑的本地应用进行交互,通过以拦截协议的方式实现。通过拦截协议来获取WEB应用端发送的调用命令来调用本地应用。
但是,现有的方式,由于拦截协议中没有指定出针对各个本地应用的调用方法,因此,在调用本地应用时,需要逐个的识别本地应用是否与拦截的命令相匹配,因此交互的方便性较低。
发明内容
本发明提供了一种交互方法、装置及系统,能够提高交互的方便性。
第一方面,本发明提供了一种交互方法,该方法可以包括:
预先设定业务协议以及至少一种业务模型;
获取WEB应用端发送的调用请求;
根据所述调用请求,在所述至少一种业务模型中确定目标业务模型;
根据所述调用请求,在所述WEB应用端中确定直译式脚本语言JS模型;
将所述JS模型注入到所述目标业务模型中;
利用注入所述JS模型后的所述目标业务模型,通过所述业务协议调用与所述调用请求相对应的本地应用,以使所述本地应用进行运行;
获取所述本地应用的运行结果,将所述运行结果发送给所述WEB应用端。
优选地,所述根据所述调用请求,在所述WEB应用端中确定JS模型,包括:
根据所述调用请求,从预先设定的至少一个JS模型路径中确定与所述调用请求相对应的目标调用请求路径;
根据所述目标调用请求路径,在所述WEB应用端中确定所述JS模型。
优选地,
所述JS模型,包括:携带参数方法的JS模型和不携带参数方法的JS模型中的任意一种。
优选地,
当所述JS模型为携带参数方法的JS模型时,
所述运行结果包括:调用与所述调用请求相对应的本地应用时生成的各种参数;
当所述JS模型为不携带参数方法的JS模型时,
所述运行结果包括:调用与所述调用请求相对应的本地应用之后生成的调用完成信息。
优选地,
所述预先设定业务协议,包括:
根据JSExport协议制定的所述业务协议。
第二方面,本发明提供了一种交互装置,该装置包括:
设定单元,用于预先设定业务协议以及至少一种业务模型;
获取单元,用于获取WEB应用端发送的调用请求;
确定单元,用于根据所述调用请求,在所述至少一种业务模型中确定目标业务模型;根据所述调用请求,在所述WEB应用端中确定直译式脚本语言JS模型;
注入单元,用于将所述JS模型注入到所述目标业务模型中;
运行及发送单元,用于利用注入所述JS模型后的所述目标业务模型,通过所述业务协议调用与所述调用请求相对应的本地应用,以使所述本地应用进行运行;获取所述本地应用的运行结果,将所述运行结果发送给所述WEB应用端。
优选地,所述确定单元,包括:第一确定子单元;
所述第一确定子单元,用于根据所述调用请求,从预先设定的至少一个JS模型路径中确定与所述调用请求相对应的目标调用请求路径;根据所述目标调用请求路径,在所述WEB应用端中确定所述JS模型。
优选地,
所述设定单元,用于根据JSExport协议制定的所述业务协议。
第三方面,本发明提供了一种交互系统,该系统包括:WEB应用端、本地应用以及上述任一所述的交互装置,其中,
所述WEB应用端,用于向所述交互装置发送调用请求,并接收所述交互装置发送的运行结果;
所述本地应用,用于根据所述交互装置的调用进行运行,并将运行结果提供给所述交互装置。
优选地,
当所述交互装置中的JS模型为携带参数方法的JS模型时,
所述本地应用,用于将运行结果提供给所述交互装置,其中,所述运行结果包括调用与所述调用请求相对应的本地应用时生成的各种参数;
当所述JS模型为不携带参数方法的JS模型时,
所述本地应用,用于将运行结果提供给所述交互装置,其中,所述运行结果包括调用与所述调用请求相对应的本地应用之后生成的调用完成信息。
本发明实施例提供了一种交互方法、装置及系统,根据WEB应用端发送的调用请求,在预先设定的业务模型中确定目标业务模型,以及将在WEB应用端中确定JS模型注入到目标业务模型中,利用注入了JS模型后的目标模型,通过预先设定的业务协议调用与调用请求相对应的本地应用,以使本地应用进行运行,并将运行结果发送给WEB应用端。通过上述过程可知,本方案可以直接在业务模型中确定与调用请求对应的目标模型,并利用注入与调用请求对应JS模型的目标模型调用本地应用,以使WEB应用端获取本地应用的运行结果,因此,本方案能够提高交互的方便性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种交互方法的流程图;
图2是本发明另一个实施例提供的一种交互方法的流程图;
图3是本发明一个实施例提供的交互装置所在设备的一种硬件结构图;
图4是本发明一个实施例提供的一种交互装置的结构示意图;
图5是本发明一个实施例提供的一种包括第一确定子单元的交互装置的结构示意图;
图6是本发明一个实施例提供的一种交互系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种交互方法,该方法可以包括以下步骤:
步骤101:预先设定业务协议以及至少一种业务模型;
步骤102:获取WEB应用端发送的调用请求;
步骤103:根据所述调用请求,在所述至少一种业务模型中确定目标业务模型;
步骤104:根据所述调用请求,在所述WEB应用端中确定直译式脚本语言JS模型;
步骤105:将所述JS模型注入到所述目标业务模型中;
步骤106:利用注入所述JS模型后的所述目标业务模型,通过所述业务协议调用与所述调用请求相对应的本地应用,以使所述本地应用进行运行;
步骤107:获取所述本地应用的运行结果,将所述运行结果发送给所述WEB应用端。
根据如图1所示的实施例,该交互方法包括:根据WEB应用端发送的调用请求,在预先设定的业务模型中确定目标业务模型,以及将在WEB应用端中确定JS模型注入到目标业务模型中,利用注入了JS模型后的目标模型,通过预先设定的业务协议调用与调用请求相对应的本地应用,以使本地应用进行运行,并将运行结果发送给WEB应用端。通过上述过程可知,本方案可以直接在业务模型中确定与调用请求对应的目标模型,并利用注入与调用请求对应JS模型的目标模型调用本地应用,以使WEB应用端获取本地应用的运行结果,因此,本发明实施例能够提高交互的方便性。
在本发明一个实施例中,WEB应用端所使用的编程语言的类型可以根据具体的业务要求确定,比如可以使用应用超文本标记语言第五版HTML5和JavaScriptCore。
在本发明一个实施例中,本地应用的类型可以根据具体的业务要求确定,比如,摄像头。另外,本地应用通常基于系统进行运行,其所在的系统所使用的编程语言的类型可以根据具体的业务要求确定,比如可以使用Objective-C。比如,摄像头在ISO系统中,ISO系统通过Objective-C语言实现。
在本发明一个实施例中,业务模型的数量以及业务模型的类型均可以根据业务要求来确定。比如确定的业务模型的数量为2个,其中,一个为摄像头业务模型,另一个为GPS(Global Positioning System,全球定位系统)业务模型。
在本发明一个实施例中,在上述图1所示过程中,步骤104根据所述调用请求,在所述WEB应用端中确定JS模型,可以包括:
根据所述调用请求,从预先设定的至少一个JS模型路径中确定与所述调用请求相对应的目标调用请求路径;
根据所述目标调用请求路径,在所述WEB应用端中确定所述JS模型。
在本实施例中,JS模型路径的数量可以根据具体的业务要求确定,比如5个。另外,JS模型路径的设置形式也可以根据业务要求确定,比如可以为documentView.webView.mainFrame.javaScriptContext。
在本实施例中,比如预先设定的JS模型路径分别为:JS模型路径1、JS模型路径2、JS模型路径3和JS模型路径4,调用请求为调用摄像头的调用请求,根据调用摄像头的调用请求在JS模型路径1、JS模型路径2、JS模型路径3和JS模型路径4确定与调用摄像头的调用请求相对应的目标调用请求路径为JS模型路径1,则根据JS模型路径1,在WEB应用端中确定出JS模型。
根据上述实施例,由于JS模型是在WEB应用端中,根据与调用请求相对应的目标调用请求路径确定的,因此JS模型与调用请求的匹配度较高。
在本发明一个实施例中,在上述图1所示流程中所涉及的所述JS模型可以包括:携带参数方法的JS模型和不携带参数方法的JS模型中的任意一种。
在本实施例中,携带参数方法的JS模型和不携带参数方法的JS模型均可以根据业务要求确定方法,比如携带参数方法的JS模型中携带的参数方法可以为jsParamFunc,不携带参数方法的JS模型中不携带的参数方法可以为jsFunc。
根据上述实施例,可以根据业务要求灵活选取携带参数方法的JS模型和不携带参数方法的JS模型中的任意一种,因此提高了JS模型的应用性。
在本发明一个实施例中,当所述JS模型为携带参数方法的JS模型时,
在上述图1所示流程中步骤107中所涉及的所述运行结果包括:调用与所述调用请求相对应的本地应用时生成的各种参数;
当所述JS模型为不携带参数方法的JS模型时,
在上述图1所示流程中步骤107中所涉及的所述运行结果包括:调用与所述调用请求相对应的本地应用之后生成的调用完成信息。
在本实施例中,运行结果包括:调用与调用请求相对应的本地应用时生成的各种参数,各种参数可以包括:在本地应用运行中产生的各种参数或本地应用运行结束后生成的参数。比如,与调用请求相对应的本地应用为GPS,选用的JS模型为不携带参数方法的JS模型时,获取的运行结果可以包括GPS运行后生成目标地点的各个经纬度数值。
在本实施例中,运行结果包括:调用与调用请求相对应的本地应用之后生成的调用完成信息。该完成信息只是用于告知WEB应用端本地应用是否运行完成。比如,与调用请求相对应的本地应用为摄像头,选用的JS模型为不携带参数方法的JS模型时,获取的运行结果可以包括摄像头运行完成后,运行结果为摄像头运行完成。
根据上述实施例,当JS模型为携带参数方法的JS模型时,运行结果包括调用与调用请求相对应的本地应用时生成的各种参数;当JS模型为不携带参数方法的JS模型时,运行结果包括调用与调用请求相对应的本地应用之后生成的调用完成信息。通过上述过程可知,使用不同的JS模型时,可以获得不同的运行成果,因此可以根据业务要求,可以灵活选用JS模型。
在本发明一个实施例中,在上述图1所示过程中,步骤101中预先设定业务协议,可以包括:
根据JSExport协议制定的所述业务协议。
在本实施例中,根据JSExport协议制定的业务协议,只是业务协议的一种优选方式,还可以根据业务要求根据其他的协议指定业务协议。
下面以使用编程语言HTML5和JavaScriptCore的WEB应用端调用使用编程语言Objective-C的ISO系统中的摄像头为例。展开说明交互方法,如图2所示,该图片存储方法可以包括如下步骤:
步骤201:预先设定业务协议、至少一种业务模型以及至少一个JS模型路径。
在本步骤中,根据JSExport协议制定业务协议;根据业务要求设定了三种业务模型,分别为摄像头业务模型、GPS业务模型和话筒业务模型;根据业务要求设定了三种JS模型路径,分别为JS模型路径1、JS模型路径2和JS模型路径3。
在本步骤中,设定业务协议可以通过如下代码实现:
@protocol JavaScriptObjectiveCDelegate<JSExport>
-(void)callSystemCamera;
-(void)showAlert:(NSString*)title msg:(NSString*)msg;
-(void)callWithDict:(NSDictionary*)params;
-(void)jsCallObjcAndObjcCallJsWithDict:(NSDictionary*)params;
@end
在本步骤中,设定业务模型可以通过如下代码实现:
步骤202:获取WEB应用端发送的调用请求。
在本步骤中,获取WEB应用端发送的调用请求为摄像头调用请求。
步骤203:根据调用请求,在至少一种业务模型中确定目标业务模型。
在本步骤中,根据步骤202中获取的摄像头调用请求,在步骤201中设定的3个业务模型中确定摄像头业务模型为目标业务模型。
步骤204:根据调用请求,从预先设定的至少一个JS模型路径中确定与调用请求相对应的目标调用请求路径。
在本步骤中,根据步骤202中获取的摄像头调用请求,在步骤201中设定的3种JS模型路径中,通过webView的valueForKeyPath获取JS模型路径1documentView.webView.mainFrame.javaScriptContext为与摄像头调用请求相对应的目标调用请求路径。
步骤205:根据目标调用请求路径,在WEB应用端中确定JS模型。
在本步骤中,根据步骤204中确定目标调用请求路径JS模型路径1,在WEB应用端中确定JS模型。确定出的JS模型为携带参数方法的JS模型。
步骤206:将JS模型注入到目标业务模型中。
在本步骤中,将步骤205中确定的携带参数方法的JS模型注入到在步骤203中确定的目标业务模型:摄像头业务模型中。
在本步骤中,将JS模型注入到目标业务模型可以通过如下方式实现:
先写JS方法:
然后,在html中的body中添加以下代码:
当点击按钮:Call Objective system camera时,
通过OCModel.callSystemCamera(),就可以在HTML中通过JS调用OC的方法。
在OC代码中,callSystemCamera方法体中,添加了以下两行代码,就是获取HTML中所定义的JS就去jsFunc,然后调用它。
JSValue*jsFunc=self.jsContext[@"jsFunc"];
[jsFunc callWithArguments:nil];
可以在JS调用OC方法时,也让OC反馈给JS。
-(void)jsCallObjcAndObjcCallJsWithDict:(NSDictionary*)params{
NSLog(@"jsCallObjcAndObjcCallJsWithDict was called,params is%@",params);
//调用JS的方法
JSValue*jsParamFunc=self.jsContext[@"jsParamFunc"];
[jsParamFunc callWithArguments:@[@{@"age":@10,@"name":@"lili",@"height":@158}]];
}
获取我们在HTML中定义的jsParamFunc方法,然后调用它并传了一个字典作为参数。
JavaScriptCore使用注意:JavaStript调用本地方法是在子线程中执行的,这里要根据实际情况考虑线程之间的切换,而在回调JavaScript方法的时候最好是在刚开始调用此方法的线程中去执行那段JavaStript方法的代码,看下面的代码解释:
步骤207:利用注入JS模型后的目标业务模型,通过业务协议调用与调用请求相对应的本地应用,以使本地应用进行运行。
在本步骤中,利用了步骤206中利用注入JS模型后的摄像头业务模型,通过步骤201中根据JSExport协议制定的业务协议,调用与摄像头调用请求相对应的摄像头,使摄像头开始运行。
步骤208:获取本地应用的运行结果,将运行结果发送给WEB应用端。
在本步骤中,由于在步骤205中确定的JS模型为携带参数的JS模型,因此获取的摄像头的运行结果中包括摄像头采集的图片信息,并将包括图片信息的运行结果发送给WEB应用端,以使WEB应用端根据运行结果进行相应的处理。
如图3、图4所示,本发明实施例提供了一种交互装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的交互装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的交互装置,包括:
设定单元401,用于预先设定业务协议以及至少一种业务模型;
获取单元402,用于获取WEB应用端发送的调用请求;
确定单元403,用于根据所述调用请求,在所述设定单元401设定的所述至少一种业务模型中确定目标业务模型;根据所述调用请求,在所述WEB应用端中确定直译式脚本语言JS模型;
注入单元404,用于将所述JS模型注入到所述目标业务模型中;
运行及发送单元405,用于利用注入所述JS模型后的所述目标业务模型,通过所述业务协议调用与所述调用请求相对应的本地应用,以使所述本地应用进行运行;获取所述本地应用的运行结果,将所述运行结果发送给所述WEB应用端。
根据如图4所示的实施例,该交互装置包括:设定单元、获取单元、确定单元和注入单元,其中,确定单元根据获取单元获取WEB应用端发送的调用请求,在设定单元预先设定的至少一种业务模型中确定目标业务模型;根据调用请求,在WEB应用端中确定直译式脚本语言JS模型,运行及发送单元利用注入单元将JS模型注入后的目标业务模型,通过设定单元设定的业务协议调用与调用请求相对应的本地应用,使本地应用进行运行,并获取本地应用的运行结果,将所述运果发送给WEB应用端。通过上述过程可知,本方案可以直接在设定单元设定的业务模型中确定与调用请求对应的目标模型,并利用注入与调用请求对应JS模型的目标模型调用本地应用,以使WEB应用端获取本地应用的运行结果,因此,本发明实施例能够提高交互的方便性。
在本发明一个实施例中,如图5所示,所述确定单元403,包括:第一确定子单元501;
所述第一确定子单元501,用于根据所述调用请求,从预先设定的至少一个JS模型路径中确定与所述调用请求相对应的目标调用请求路径;根据所述目标调用请求路径,在所述WEB应用端中确定所述JS模型。
在本发明一个实施例中,所述设定单元401,用于根据JSExport协议制定的所述业务协议。
本发明一个实施例提供了一种可读介质,该可读介质包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行上述任一项所述的交互方法。
在本发明一个实施例提供了一种存储控制器,该存储控制器包括:处理器、存储其和总线;所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行上述任一所述的交互方法。
如图6所示,本发明实施例提供了一种交互系统,该交互系统包括:WEB应用端601、本地应用602以及上述任一所述的交互装置603,其中,
所述WEB应用端601,用于向所述交互装置603发送调用请求,并接收所述交互装置603发送的运行结果;
所述本地应用602,用于根据所述交互装置603的调用进行运行,并将运行结果提供给所述交互装置603。
根据如图6所示的实施例,该交互系统包括:WEB应用端、本地应用以及交互装置,其中,WEB应用端向交互装置发送调用请求,并接收交互装置发送的运行结果,本地应用根据交互装置的调用进行运行,并将运行结果提供给交互装置,以使交互装置将运行结果发送给WEB应用端。通过上述过程可知,本方案可以直接利用交互装置使本地应用根据WEB应用端的调用请求进行运行,并使WEB应用端通过交互装置接收本地应用的运行结果,因此,本方案能够提高交互的方便性。
在本发明一个实施例中,当所述交互装置中的JS模型为携带参数方法的JS模型时,
所述本地应用602,用于将运行结果提供给所述交互装置603,其中,所述运行结果包括调用所述调用请求对应的本地应用时生成的各种参数;
当所述JS模型为不携带参数方法的JS模型时,
所述本地应用602,用于将运行结果提供给所述交互装置603,其中,所述运行结果包括调用所述调用请求对应的本地应用之后生成的调用完成信息。
上述装置及系统内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
综上所述,本发明各个实施例至少可以实现如下有益效果:
1、在本发明实施例中,根据WEB应用端发送的调用请求,在预先设定的业务模型中确定目标业务模型,以及将在WEB应用端中确定JS模型注入到目标业务模型中,利用注入了JS模型后的目标模型,通过预先设定的业务协议调用与调用请求相对应的本地应用,以使本地应用进行运行,并将运行结果发送给WEB应用端。通过上述过程可知,本方案可以直接在业务模型中确定与调用请求对应的目标模型,并利用注入与调用请求对应JS模型的目标模型调用本地应用,以使WEB应用端获取本地应用的运行结果,因此,本发明实施例能够提高交互的方便性。
2、在本发明实施例中,由于JS模型是在WEB应用端中,根据与调用请求相对应的目标调用请求路径确定的,因此JS模型与调用请求的匹配度较高。
3、在本发明实施例中,可以根据业务要求灵活选取携带参数方法的JS模型和不携带参数方法的JS模型中的任意一种,因此提高了JS模型的应用性。
4、在本发明实施例中,当JS模型为携带参数方法的JS模型时,运行结果包括调用与调用请求相对应的本地应用时生成的各种参数;当JS模型为不携带参数方法的JS模型时,运行结果包括调用与调用请求相对应的本地应用之后生成的调用完成信息。通过上述过程可知,使用不同的JS模型时,可以获得不同的运行成果,因此可以根据业务要求,可以灵活选用JS模型。
5、在本发明实施例中,该交互装置包括:设定单元、获取单元、确定单元和注入单元,其中,确定单元根据获取单元获取WEB应用端发送的调用请求,在设定单元预先设定的至少一种业务模型中确定目标业务模型;根据调用请求,在WEB应用端中确定直译式脚本语言JS模型,运行及发送单元利用注入单元将JS模型注入后的目标业务模型,通过设定单元设定的业务协议调用与调用请求相对应的本地应用,使本地应用进行运行,并获取本地应用的运行结果,将所述运果发送给WEB应用端。通过上述过程可知,本方案可以直接在设定单元设定的业务模型中确定与调用请求对应的目标模型,并利用注入与调用请求对应JS模型的目标模型调用本地应用,以使WEB应用端获取本地应用的运行结果,因此,本发明实施例能够提高交互的方便性。
6、在本发明实施例中,该交互系统包括:WEB应用端、本地应用以及交互装置,其中,WEB应用端向交互装置发送调用请求,并接收交互装置发送的运行结果,本地应用根据交互装置的调用进行运行,并将运行结果提供给交互装置,以使交互装置将运行结果发送给WEB应用端。通过上述过程可知,本方案可以直接利用交互装置使本地应用根据WEB应用端的调用请求进行运行,并使WEB应用端通过交互装置接收本地应用的运行结果,因此,本方案能够提高交互的方便性。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种交互方法,其特征在于,预先设定业务协议以及至少一种业务模型,还包括:
获取WEB应用端发送的调用请求;
根据所述调用请求,在所述至少一种业务模型中确定目标业务模型;
根据所述调用请求,在所述WEB应用端中确定直译式脚本语言JS模型;
将所述JS模型注入到所述目标业务模型中;
利用注入所述JS模型后的所述目标业务模型,通过所述业务协议调用与所述调用请求相对应的本地应用,以使所述本地应用进行运行;
获取所述本地应用的运行结果,将所述运行结果发送给所述WEB应用端。
2.根据权利要求1所述的方法,其特征在于,所述根据所述调用请求,在所述WEB应用端中确定JS模型,包括:
根据所述调用请求,从预先设定的至少一个JS模型路径中确定与所述调用请求相对应的目标调用请求路径;
根据所述目标调用请求路径,在所述WEB应用端中确定所述JS模型。
3.根据权利要求1所述的方法,其特征在于,
所述JS模型,包括:携带参数方法的JS模型和不携带参数方法的JS模型中的任意一种。
4.根据权利要求3所述的方法,其特征在于,
当所述JS模型为携带参数方法的JS模型时,
所述运行结果包括:调用与所述调用请求相对应的本地应用时生成的各种参数;
当所述JS模型为不携带参数方法的JS模型时,
所述运行结果包括:调用与所述调用请求相对应的本地应用之后生成的调用完成信息。
5.根据权利要求1至4任一所述的方法,其特征在于,
所述预先设定业务协议,包括:
根据JSExport协议制定的所述业务协议。
6.一种交互装置,其特征在于,包括:
设定单元,用于预先设定业务协议以及至少一种业务模型;
获取单元,用于获取WEB应用端发送的调用请求;
确定单元,用于根据所述调用请求,在所述至少一种业务模型中确定目标业务模型;根据所述调用请求,在所述WEB应用端中确定直译式脚本语言JS模型;
注入单元,用于将所述JS模型注入到所述目标业务模型中;
运行及发送单元,用于利用注入所述JS模型后的所述目标业务模型,通过所述业务协议调用与所述调用请求相对应的本地应用,以使所述本地应用进行运行;获取所述本地应用的运行结果,将所述运行结果发送给所述WEB应用端。
7.根据权利要求6所述的装置,其特征在于,所述确定单元,包括:第一确定子单元;
所述第一确定子单元,用于根据所述调用请求,从预先设定的至少一个JS模型路径中确定与所述调用请求相对应的目标调用请求路径;根据所述目标调用请求路径,在所述WEB应用端中确定所述JS模型。
8.根据权利要求6或7所述的装置,其特征在于,
所述设定单元,用于根据JSExport协议制定的所述业务协议。
9.一种交互系统,其特征在于,包括:WEB应用端、本地应用以及权利要求6至8任一所述的交互装置,其中,
所述WEB应用端,用于向所述交互装置发送调用请求,并接收所述交互装置发送的运行结果;
所述本地应用,用于根据所述交互装置的调用进行运行,并将运行结果提供给所述交互装置。
10.根据权利要求9所述的系统,其特征在于,
当所述交互装置中的JS模型为携带参数方法的JS模型时,
所述本地应用,用于将运行结果提供给所述交互装置,其中,所述运行结果包括调用与所述调用请求相对应的本地应用时生成的各种参数;
当所述JS模型为不携带参数方法的JS模型时,
所述本地应用,用于将运行结果提供给所述交互装置,其中,所述运行结果包括调用与所述调用请求相对应的本地应用之后生成的调用完成信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710095567.5A CN106897416A (zh) | 2017-02-22 | 2017-02-22 | 一种交互方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710095567.5A CN106897416A (zh) | 2017-02-22 | 2017-02-22 | 一种交互方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106897416A true CN106897416A (zh) | 2017-06-27 |
Family
ID=59184872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710095567.5A Pending CN106897416A (zh) | 2017-02-22 | 2017-02-22 | 一种交互方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106897416A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120317233A1 (en) * | 2011-06-13 | 2012-12-13 | International Business Machines Corporation | Mobile web app infrastructure |
CN102929638A (zh) * | 2012-11-07 | 2013-02-13 | 广州市动景计算机科技有限公司 | 扩展WebApp应用功能的方法和系统 |
CN103106102A (zh) * | 2013-01-14 | 2013-05-15 | 百度在线网络技术(北京)有限公司 | 一种web应用程序的运行方法及移动终端 |
US20140207851A1 (en) * | 2013-01-23 | 2014-07-24 | Alibaba Group Holding Limited | Resource calling for hybrid applications |
CN105141653A (zh) * | 2015-07-01 | 2015-12-09 | 北京奇虎科技有限公司 | 业务平台的数据交互方法、设备和系统 |
-
2017
- 2017-02-22 CN CN201710095567.5A patent/CN106897416A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120317233A1 (en) * | 2011-06-13 | 2012-12-13 | International Business Machines Corporation | Mobile web app infrastructure |
CN102929638A (zh) * | 2012-11-07 | 2013-02-13 | 广州市动景计算机科技有限公司 | 扩展WebApp应用功能的方法和系统 |
CN103106102A (zh) * | 2013-01-14 | 2013-05-15 | 百度在线网络技术(北京)有限公司 | 一种web应用程序的运行方法及移动终端 |
US20140207851A1 (en) * | 2013-01-23 | 2014-07-24 | Alibaba Group Holding Limited | Resource calling for hybrid applications |
CN105141653A (zh) * | 2015-07-01 | 2015-12-09 | 北京奇虎科技有限公司 | 业务平台的数据交互方法、设备和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9778924B2 (en) | Platform for enabling creation and use of an API for a specific solution | |
CN107766532A (zh) | 一种前端Node.js自动化正静态方法 | |
CN109450708B (zh) | 一种Nginx动态配置方法及系统 | |
CN105389160A (zh) | 一种信息发布方法及装置 | |
CN108292207A (zh) | 用于声明性动作编排的方法和装置 | |
CN106997298A (zh) | 一种应用资源获取方法及装置 | |
CN106326099B (zh) | 一种用于程序跟踪的方法、装置及电子设备 | |
CN110019835A (zh) | 资源编排方法、装置以及电子设备 | |
CN109788029A (zh) | 微服务的灰度调用方法、装置、终端及可读存储介质 | |
CN110633959A (zh) | 基于图结构的审批任务创建方法、装置、设备及介质 | |
CN112465448A (zh) | 基于区块链的跨组织工作流运行方法及系统 | |
CN110007916A (zh) | 业务系统的界面渲染方法、装置和服务器 | |
CN110413395A (zh) | 服务调用预热方法、装置、设备及存储介质 | |
CN105847319A (zh) | 一种移动终端网络请求方法及系统 | |
CN109067860A (zh) | 一种移动端消息处理方法及相关装置 | |
CN111294377B (zh) | 一种依赖关系的网络请求发送方法、终端装置及存储介质 | |
CN110019444A (zh) | 一种操作请求处理方法、装置、设备及系统 | |
CN106453250B (zh) | 一种大数据rpc的处理方法 | |
CN106897416A (zh) | 一种交互方法、装置及系统 | |
US10397342B2 (en) | Web service contract selection | |
CN110401925A (zh) | 一种通讯消息的生成方法及装置 | |
CN107239265A (zh) | Java函数与C函数的绑定方法及装置 | |
CN112769928A (zh) | 一种基于业务场景的信息交互方法及设备 | |
US9491244B2 (en) | Method for invoking a constituent service provided in a telecommunication network and an application server for providing a composite service | |
CN111078206A (zh) | 表单提交方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170627 |