本发明涉及跨域请求,特别涉及一种涉及跨域的请求处理方法与系统。
背景技术:
1、目前大部分的系统中都是进行前后端项目分离的,并且服务端实例为了满足高并发,高吞吐的场景,一般都会采用分布式部署的方式,因为此种架构方式下,服务端会存在多种应用,其分别也会采用多个域名,在这种前后端分离,服务端存在多域名场景下,前端项目会对接多个服务端项目,即会存在跨域的场景。
2、目前主要使用的一种跨域方式为,浏览器预先发送一个options的请求,当该请求到达服务端时,由服务端明确本服务端是否支持跨域请求,并返回跨域的一些基本信息,当浏览器接收到此信息时,根据服务端是否支持该请求,再次进行真正的数据请求,即每次的跨域都将存在至少2次的数据请求,此种跨域方式下,会导致每次请求都造成2倍的耗时。
3、因此,如何高请求的效率,是当前所要解决的问题。
技术实现思路
1、本发明所要解决的技术问题是:提供一种涉及跨域的请求处理方法与系统,有效提高请求效率。
2、为了解决上述技术问题,本发明采用的技术方案为:
3、一种涉及跨域的请求处理方法,包括步骤:
4、s1、浏览器判断待生成的请求是否涉及跨域,若是则生成预设协议请求,否则根据旧有逻辑生成常规请求;
5、所述预设协议请求中包括跨域数据和业务数据;
6、s2、浏览器向业务指定的业务服务端发送所述预设协议请求/所述常规请求;
7、s3、业务服务端接收请求,进行跨域校验,并在跨域校验通过后进行业务处理。
8、为了解决上述技术问题,本发明采用的另一种技术方案为:
9、一种涉及跨域的请求处理系统,包括浏览器端、业务服务端,所述浏览器端包括第一处理器、第一存储器以及存储在所述第一存储器中并可在所述第一处理器上运行的第一计算机程序,所述业务服务端包括第二处理器、第二存储器以及存储在所述第二存储器中并可在所述第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:
10、s1、判断待生成的请求是否涉及跨域,若是则生成预设协议请求,否则根据旧有逻辑生成常规请求;
11、所述预设协议请求中包括跨域数据和业务数据;
12、s2、向业务指定的业务服务端发送所述预设协议请求/所述常规请求;
13、所述第二处理器执行所述第二计算机程序时实现以下步骤:
14、s3、接收请求,进行跨域校验,并在跨域校验通过后进行业务处理。
15、本发明的有益效果在于:本发明的一种涉及跨域的请求处理方法与系统,浏览器在需要跨域请求时,直接向业务所指定的业务服务器发送包括跨域数据和业务数据的跨域请求,由业务服务器直接进行是否允许跨域的判断,并在判断允许跨域的情况下,直接进行后续的业务处理,相较于传统的跨域请求方式,能够减少一次网络请求,有效提高跨域场景下的系统性能,提高访问效率。
1.一种涉及跨域的请求处理方法,其特征在于,包括步骤:
2.根据权利要求1所述的一种涉及跨域的请求处理方法,其特征在于,所述预设协议请求基于预设协议生成,所述预设协议预先封装于浏览器中。
3.根据权利要求2所述的一种涉及跨域的请求处理方法,其特征在于,步骤s3具体为:
4.根据权利要求1所述的一种涉及跨域的请求处理方法,其特征在于,所述跨域校验通过业务服务端上预设的校验器进行处理。
5.根据权利要求4所述的一种涉及跨域的请求处理方法,其特征在于,所述跨域校验具体为:
6.一种涉及跨域的请求处理系统,包括浏览器端、业务服务端,所述浏览器端包括第一处理器、第一存储器以及存储在所述第一存储器中并可在所述第一处理器上运行的第一计算机程序,所述业务服务端包括第二处理器、第二存储器以及存储在所述第二存储器中并可在所述第二处理器上运行的第二计算机程序,其特征在于,所述第一处理器执行所述第一计算机程序时实现以下步骤:
7.根据权利要求6所述的一种涉及跨域的请求处理系统,其特征在于,所述预设协议请求基于预设协议生成,所述预设协议预先封装于浏览器中。
8.根据权利要求7所述的一种涉及跨域的请求处理系统,其特征在于,步骤s3具体为:
9.根据权利要求6所述的一种涉及跨域的请求处理系统,其特征在于,所述跨域校验通过业务服务端上预设的校验器进行处理。
10.根据权利要求9所述的一种涉及跨域的请求处理系统,其特征在于,所述跨域校验具体为: