[发明专利]一种应用于Web前端的URL解析及构造方法在审
申请号: | 201911120135.0 | 申请日: | 2019-11-15 |
公开(公告)号: | CN110909272A | 公开(公告)日: | 2020-03-24 |
发明(设计)人: | 司毅 | 申请(专利权)人: | 无锡家校邦网络科技有限公司 |
主分类号: | G06F16/955 | 分类号: | G06F16/955;G06F16/903;G06F16/951 |
代理公司: | 淮安睿合知识产权代理事务所(普通合伙) 32372 | 代理人: | 赵霎 |
地址: | 214000 江苏省无锡市新吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用于 web 前端 url 解析 构造 方法 | ||
本发明涉及Web前端的URL解析技术,具体为一种应用于Web前端的URL解析及构造方法,包括URLTemplate实例构造和URL解析;其中URLTemplate实例构造包括如下步骤:1a:判断是否设置了路径模版,若设置了路径模版,则将路径模版转为正则表达式并提取模版这种的参数的名称及索引;2a:判断是否设置了路径参数数据模式,若设置了路径参数数据模式则判断参数名称及个数是否一致,若一致则结束构造;当1a中未设置路径模版,则结束构造;当2a中未设置路径参数数据模式,则结束构造;当2a中参数名称及数不一致,则结束构造,并返回错误;所述URL解析包括如下步骤:1b:使用原生URL API解析URL;2b:解析路径参数;3b:解析查询参数。
技术领域
本发明涉及Web前端的URL解析技术,具体为一种应用于Web前端的URL解析及构造方法。
背景技术
如何从服务器获取数据是Web前端开发首先要解决的问题,而从服务器获取数据首先要通过URL准确定位资源,因此对于Web前端开发来说,URL的解析与构造是至关重要的内容。如今虽然主流浏览器都支持原生的URL API,但是该API存在以下不足:1、主要用于URL的解析而非构造,而Web前端的主要使用场景是构造URL、发送HTTP请求;2、仅支持解析完整的URL,不以当前网页所在的URL为基准,然而前端代码可能会部署到多个环境中,经常会使用相对路径,甚至是省略协议部分;3、路径(pathname)仅作为字符串处理,而如今在服务接口设计上被广泛应用的RESTful设计风格中,路径经常会包含参数;4、查询参数(searchParams)虽然被解析为对象(参数键值对映射表),但是并不支持复杂对象及数组。
另一方面,随着各种后台开发技术的兴起,如今的Web前端开发人员需要面对多种不同的URL定义规范。例如,使用Node.js作为Web服务器时,查询参数支持通过中括号表示对象属性,但是,使用Tomcat(6及以上版本)作为Web服务器时,由于Tomcat严格遵循RFC7230和RFC 3986规范,这将导致服务器无法解析这样的查询参数而发生错误。
综上,我们需要一个使用灵活且遵循规范的URL解析与构造方法。
发明内容
本发明的目的是为了解决上述技术不足,提供了一种应用于Web前端的URL解析及构造方法。
为解决上述技术问题,本发明所采用的技术方案为:一种应用于Web前端的URL解析及构造方法,包括URLTemplate实例构造和URL解析;其中URLTemplate实例构造包括如下步骤:
1a:若设置了路径模版,则将路径模版转为正则表达式并提取模版这种的参数的名称及索引;
2a:若设置了路径模版且设置了路径参数数据模式则判断参数名称及个数是否一致,若一致则结束构造;
当2a中参数名称及个数不一致,则结束构造,并返回错误;
所述URL解析包括如下步骤:
1b:使用原生URL API解析URL;
2b:若设置了路径模版,则从路径中提取路径参数;
3b:若设置了路径模版且设置了路径参数数据模式,则校验路径参数对象,并在存在错误时结束解析、返回错误;
4b:若URL中包含查询字符串,则将其解析为查询参数对象;
5b:若URL中包含查询字符串且设置了查询参数数据模式,则校验查询参数对象,并在存在错误时结束解析、返回错误。
作为优选,还包括URL构造方法:具体包括:
1c:判断是否设置了路径模版,若设置了路径模版,则使用路径参数对象设置路径;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡家校邦网络科技有限公司,未经无锡家校邦网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911120135.0/2.html,转载请声明来源钻瓜专利网。