【技术实现步骤摘要】
数据交互方法及装置
本专利技术涉及数据交互
,特别是涉及一种数据交互方法及装置。
技术介绍
目前,在移动应用的开发的过程中,通常会应用到webview来展示一些页面。在通过webview实现页面的展示过程中,通常需要webview端与原生native端进行一些数据交互,例如:web页面需要判断用户是否登录、获取用户信息等。通过webview端与native端之间的数据交互,以实现移动应用的开发过程。现有技术中,native端和webview端进行数据交互时,native端会暴露所有与webview端之间的通信接口,当webview端中承载的网页产品中,任意一个产品线需要更改其中一个消息接口数据时,该webview端中所有网页产品的通讯信息将会受到影响,且native端中暴露的所有通信接口,使得其在与webview端进行进行数据传输的过程中,进行交互的数据也完全暴露。因此,现有技术中native端与webview端之间进行数据交互时,无法保证数据在传输过程中的安全性。
技术实现思路
有鉴于此,本专利技术提供一种数据交互方法,通过该方法,无需暴露native端所有的通信接口,提高数据交互过程的安全性。本专利技术还提供了一种数据交互装置,用以保证上述方法在实际中的实现及应用。一种数据交互方法,包括:当检测到原生native端与网页webview端需要进行数据交互时,确定所述native端与所述webview端之间的待交互数据;启动预先设置于所述webview ...
【技术保护点】
1.一种数据交互方法,其特征在于,包括:/n当检测到原生native端与网页webview端需要进行数据交互时,确定所述native端与所述webview端之间的待交互数据;/n启动预先设置于所述webview端中的JavaScript,并暴露所述JavaScript中预先建立的第一通信桥和第二通信桥,所述第一通信桥为所述native端访问所述webview端时进行数据交互的交互桥梁,所述二通信桥为所述webview端访问所述native端时进行数据交互的交互桥梁;/n基于预先设置的交互规则,确定所述native端中与所述待交互数据对应的通信接口,所述native端设置有多个通信接口,所述通信接口为公有接口或私有接口,所述公有接口用于传输全局的数据,所述私有接口用于传输指定的数据;/n确定所述待交互数据的目标传输方向,并基于所述目标传输方向,在所述第一通信桥和所述第二通信桥中,选择所述待交互数据对应的目标通信桥;/n基于所述目标通信桥及所述通信接口,实现所述待交互数据对应的数据交互过程。/n
【技术特征摘要】
1.一种数据交互方法,其特征在于,包括:
当检测到原生native端与网页webview端需要进行数据交互时,确定所述native端与所述webview端之间的待交互数据;
启动预先设置于所述webview端中的JavaScript,并暴露所述JavaScript中预先建立的第一通信桥和第二通信桥,所述第一通信桥为所述native端访问所述webview端时进行数据交互的交互桥梁,所述二通信桥为所述webview端访问所述native端时进行数据交互的交互桥梁;
基于预先设置的交互规则,确定所述native端中与所述待交互数据对应的通信接口,所述native端设置有多个通信接口,所述通信接口为公有接口或私有接口,所述公有接口用于传输全局的数据,所述私有接口用于传输指定的数据;
确定所述待交互数据的目标传输方向,并基于所述目标传输方向,在所述第一通信桥和所述第二通信桥中,选择所述待交互数据对应的目标通信桥;
基于所述目标通信桥及所述通信接口,实现所述待交互数据对应的数据交互过程。
2.根据权利要求1所述的方法,其特征在于,所述基于预先设置的交互规则,确定所述native中与所述待交互数据对应的通信接口,包括:
获取所述待交互数据的数据信息;
解析所述数据信息,获得所述待交互数据对应的数据标识码;
获取预先设置的通信表,并判断所述通信表中是否存在与所述数据标识码一致的通信码;
若所述通信表中存在与所述数据标识码一致的通信码,则确定所述native中与所述待交互数据对应的通信接口为私有接口;
若所述通信表中不存在与所述数据标识码一致的通信码,则判断所述数据标识码是否包含用户对所述待交互数据进行授权的授权标识符;
若所述数据标识码包含用户对所述待交互数据进行授权的授权标识符,则确定所述native中与所述待交互数据对应的通信接口为私有接口;
若所述数据标识码不包含用户对所述待交互数据进行授权的授权标识符,则确定所述native中与所述待交互数据对应的通信接口为公有接口。
3.根据权利要求1所述的方法,其特征在于,建立所述第一通信桥和所述第二通信桥的过程,包括:
确定所述native端访问所述webview端时对应的传输方向为第一传输方向,及所述webview端访问所述native端时对应的传输方向为第二传输方向;
基于所述第一传输方向及所述第二传输方向,设置所述第一传输方向对应的第一通信桥接口名、第一通信参数和第一回调函数,及所述第二传输方向对应的第二通信桥接口名、第一通信参数和第二回调函数;
加载所述JavaScript的JS运行环境JScontext;
在所述JScontext中写入所述第一传输方向对应的第一通信桥接口名、第一通信参数和第一回调函数,生成所述第一传输方向对应的第一通信桥;
在所述JScontext中写入所述第二传输方向对应的第二通信桥接口名、第二通信参数和第二回调函数,生成所述第二传输方向对应的第二通信桥。
4.根据权利要求3所述的方法,其特征在于,所述基于所述目标传输方向,在所述第一通信桥和所述第二通信桥中,选择所述待交互数据对应的目标通信桥,包括:
基于所述目标传输方向,确定预先设置的所述目标传输方向对应的目标通信桥接口名、目标通信参数及目标回调函数;
基于所述目标通信桥接口名、目标通信参数及目标回调函数,确定所述JavaScript中所述目标传输方向对应的目标通信桥。
5.根据权利要求4所述的方法,其特征在于,所述基于所述目标通信桥及所述通信接口,实现所述待交互数据对应的数据交互过程,包括:
基于所述目标通信桥接口名,确定所述目标通信桥对应的API接口;
将所述API接口与所述通信接口连接,获得所述native端与所述webview端之间的连接通道;
基于所述目标通信参数、所述目标回调函数及所述连接通道,对所述待交互数据进行传输。
6.一种数据交互装置,其特征在于,包括...
【专利技术属性】
技术研发人员:周俊熙,
申请(专利权)人:湖南快乐阳光互动娱乐传媒有限公司,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。