System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种路由组件的解析和跳转方法技术_技高网

一种路由组件的解析和跳转方法技术

技术编号:40836117 阅读:4 留言:0更新日期:2024-04-01 15:00
本发明专利技术公开了一种路由组件的解析和跳转方法,包括以下步骤,步骤一,系统运行,并在运行时标记时间戳,步骤二,配置路由表,步骤三,路由拦截器解析,步骤四,在路由拦截器放行后,进行路由解析,步骤五,判断映射规则,并在映射规则判断成功时,执行完成路由解析的步骤。达到的技术效果为:传统的页面跳转是通过Intent直接启动Activity,这种方式下,源Activity必须知道目标Activity的全路径,这样使得应用组件之间高度耦合,不易于维护和模块化开发。而使用路由组件之后,页面跳转只需要知道目标的路由地址,不需要关心具体实现,大大降低了耦合度。

【技术实现步骤摘要】

本专利技术涉及数据处理,具体涉及一种路由组件的解析和跳转方法


技术介绍

1、传统的intent发起跳转的形式不能有效的实现模块间解耦的问题,尤其对于企业级app多模块来说,无法完全解耦将会增加跨团队协作相互依赖的问题。

2、app内页面之间的跳转,如页面a跳转到页面b。要实现页面间跳转有多种实现方案,为了通用、可扩展、易维护,通常我们会选择使用约定路由表,使用统一资源定位符url进行路由跳转。


技术实现思路

1、为此,本专利技术提供一种路由组件的解析和跳转方法,以解决现有技术中传统的intent发起跳转的形式不能有效的实现模块间解耦的问题,尤其对于企业级app多模块来说,无法完全解耦将会增加跨团队协作相互依赖的问题的问题。

2、为了实现上述目的,本专利技术提供如下技术方案:

3、根据本专利技术的第一方面,一种路由组件的解析和跳转方法,包括以下步骤,

4、步骤一,系统运行,并在运行时标记时间戳,

5、步骤二,配置路由表,

6、步骤三,路由拦截器解析,

7、步骤四,在路由拦截器放行后,进行路由解析,

8、步骤五,判断映射规则,并在映射规则判断成功时,执行完成路由解析的步骤,

9、步骤六,在执行完成路由解析步骤后,判断路由生效域,

10、步骤七,完成路由跳转,且在步骤五执行完成降级处理步骤时,直接跳转至此步骤,

11、步骤八,记录结束时间戳并计算执行耗时,并将跳转结果回调至调用方,

12、步骤九,结束。

13、进一步地,所述步骤二与步骤三之间还包括以下步骤,

14、步骤21,判断是否存在云端路由表,

15、步骤22,如果存在云端路由表时,配置云端路由表,再配置本地路由表,

16、步骤23,如果不存在云端路由表时,配置本地路由表。

17、进一步地,所述步骤三包括以下步骤,

18、步骤31,路由拦截器解析记录日志,

19、步骤32,url合法检测拦截器判断日志内容是否需要拦截,

20、步骤33,当url合法检测拦截器判断日志内容不需要拦截时,隐私政策拦截器判断日志内容是否需要拦截,

21、步骤34,当隐私政策拦截器判断日志内容不需要拦截时,检测登录拦截器判断日志内容是否需要拦截,

22、步骤35,当检测登录拦截器判断日志内容不需要拦截时,路由拦截器放行,

23、步骤36,当url合法检测拦截器拦截或隐私政策拦截器拦截或检测登录拦截器判断日志内容需要拦截时,执行拦截处理器降级处理。

24、进一步地,所述步骤四包括以下步骤,

25、步骤41,判断路由规则是否为通配规则,

26、步骤42,当路由规则不是通配规则时,进行路由解析,

27、步骤43,当路由规则是通配规则时,执行异步请求云端通配路由配置,再执行步骤42。

28、进一步地,所述步骤五包括以下步骤:

29、判断完映射规则后,将路由规则对应进行如下处理,标准uri解析处理或正则映射解析处理或页面映射解析处理。

30、进一步地,所述标准uri解析处理包括以下步骤,

31、步骤511,判断解析结果,

32、步骤512,判断失败时,判断降级策略,

33、步骤513,降级策略分为全局降级和局部降级,

34、步骤514,完成降级处理。

35、进一步地,所述正则映射解析处理步骤包括以下步骤,

36、步骤521,判断解析结果,

37、步骤522,判断失败时,判断降级策略,

38、步骤523,降级策略分为全局降级和局部降级,

39、步骤524,完成降级处理。

40、进一步地,所述页面映射解析处理步骤包括以下步骤,

41、步骤531,判断解析结果,

42、步骤532,判断失败时,判断降级策略,

43、步骤533,降级策略分为全局降级和局部降级,

44、步骤534,完成降级处理。

45、进一步地,在标准uri解析处理、正则映射解析处理步骤、页面映射解析处理步骤中的判断解析结果成功时,则执行完成路由解析步骤。

46、进一步地,所述步骤六包括以下步骤,

47、步骤61,判断路由生效域,

48、当生效域在应用内时,执行以下步骤

49、步骤611,原生应用内作用域路由跳转,

50、步骤612,判断跳转方式,

51、步骤613,原生跳转时,执行模块内/跨模块跳转,

52、步骤614,完成原生应用作用域跳转,

53、当步骤613执行跨平台跳转时,执行react native跨平台跳转,而后执行步骤614,

54、步骤62,完成路由跳转,

55、当生效域在应用外时,

56、步骤621,应用外作用域路由跳转,

57、步骤622,判断跳转方式,

58、步骤623,外部应用跳转时,唤醒/跳转外部应用,

59、步骤624,完成应用外作用域路由跳转,

60、当步骤623执行小程序跳转时,执行小程序跳转,而后执行步骤624,

61、步骤62,完成路由跳转。

62、本专利技术具有如下优点:

63、解耦:传统的页面跳转是通过intent直接启动activity,这种方式下,源activity必须知道目标activity的全路径,这样使得应用组件之间高度耦合,不易于维护和模块化开发。而使用路由组件之后,页面跳转只需要知道目标的路由地址,不需要关心具体实现,大大降低了耦合度。

64、易于管理:路由组件通常会将应用中所有的路由地址集中管理,这使得我们可以很方便地查看和管理应用中所有的页面跳转路径。

65、支持跨模块调用:在组件化、模块化开发中,不同模块间的页面跳转是一个问题,如果使用传统的页面跳转方式,需要处理复杂的模块依赖关系。而使用路由组件,只需要统一的路由地址,就可以轻松实现跨模块的页面跳转。

66、支持拦截器:路由组件通常会支持拦截器,可以在页面跳转过程中加入一些自定义的逻辑,如登录验证、数据检查等。

67、支持动态路由:有些场景下,可能需要动态改变路由地址,这在传统的页面跳转方式下很难实现。而路由组件则可以轻松支持动态路由。

68、安全性:传统的页面跳转方式较容易被劫持或被注入,而使用路由组件则可以有效地防止这种情况。

本文档来自技高网...

【技术保护点】

1.一种路由组件的解析和跳转方法,其特征在于,包括以下步骤,

2.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤二与步骤三之间还包括以下步骤,

3.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤三包括以下步骤,

4.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤四包括以下步骤,

5.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤五包括以下步骤:

6.根据权利要求5所述的一种路由组件的解析和跳转方法,其特征在于,

7.根据权利要求6所述的一种路由组件的解析和跳转方法,其特征在于,所述正则映射解析处理步骤包括以下步骤,

8.根据权利要求7所述的一种路由组件的解析和跳转方法,其特征在于,所述页面映射解析处理步骤包括以下步骤,

9.根据权利要求8所述的一种路由组件的解析和跳转方法,其特征在于,在标准Uri解析处理、正则映射解析处理步骤、页面映射解析处理步骤中的判断解析结果成功时,则执行完成路由解析步骤。

10.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤六包括以下步骤,

...

【技术特征摘要】

1.一种路由组件的解析和跳转方法,其特征在于,包括以下步骤,

2.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤二与步骤三之间还包括以下步骤,

3.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤三包括以下步骤,

4.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤四包括以下步骤,

5.根据权利要求1所述的一种路由组件的解析和跳转方法,其特征在于,所述步骤五包括以下步骤:

6.根据权利要求5所述的一种路由组件的解析和跳转...

【专利技术属性】
技术研发人员:夏利敏
申请(专利权)人:北京虎嗅信息科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1