CN112965739B - 前端http请求处理方法、装置及系统 - Google Patents

前端http请求处理方法、装置及系统 Download PDF

Info

Publication number
CN112965739B
CN112965739B CN202110178675.5A CN202110178675A CN112965739B CN 112965739 B CN112965739 B CN 112965739B CN 202110178675 A CN202110178675 A CN 202110178675A CN 112965739 B CN112965739 B CN 112965739B
Authority
CN
China
Prior art keywords
request
instance
preset
http request
configuration parameters
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.)
Active
Application number
CN202110178675.5A
Other languages
English (en)
Other versions
CN112965739A (zh
Inventor
高见
罗涛
赵海强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110178675.5A priority Critical patent/CN112965739B/zh
Publication of CN112965739A publication Critical patent/CN112965739A/zh
Application granted granted Critical
Publication of CN112965739B publication Critical patent/CN112965739B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种前端HTTP请求处理方法、装置及系统,可用于人工智能技术领域,所述方法包括:通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数;根据所述自定义配置参数和预设请求实例形成封装请求;将所述封装请求发送至对应的服务器以对所述封装请求进行处理,本发明可有效提升开发效率及增强程序本身健壮性。

Description

前端HTTP请求处理方法、装置及系统
技术领域
本发明涉及计算机互联网技术领域,特别涉及人工智能技术领域,具体涉及一种前端HTTP请求处理方法、装置及系统。
背景技术
目前开源的http(hypertext transfer protocol,超文本传输协议)库有多种,比如,JQeury ajax,需要引入整个JQuery库进行请求处理,对于单纯想使用ajax请求功能的场景不太友好。并且,JQeury ajax基于XMLHttpRequest实现,XMLHttpRequest本身的架构不太清晰,从而出现了采用fetch的替代方案,Fetch丰富了前端开发者在请求方面的选择。但是,fetch是一个封装度较低的接口集合,需要开发者关心较多的参数,需要encode请求的playload以及需要指定请求Header中的内容类型等。另外在错误处理上也比较麻烦,fetch返回的是一种字节流的数据格式,对于常见的json类型,需要增加对象转化的操作,然而在某些特殊情况没有返回json字符串时,直接进行json转化会出现异常。综上,现有技术中,对于前端HTTP请求的处理,需要开发人员设置较多的参数及进行复杂的开发过程才能使终端形成HTTP请求,并发送HTTP请求至服务器进行处理。并且,在请求处理过程中出现异常时,返回的异常信息在直接格式转换过程中可能会出现错误。
发明内容
为了解决现有技术中的问题的至少之一,本发明的一个目的在于提供一种前端HTTP请求处理方法,本发明可有效提升开发效率及增强程序本身健壮性。本发明的另一个目的在于提供一种前端HTTP请求处理装置。本发明的再一个目的在于提供一种前端HTTP请求处理系统。本发明的还一个目的在于提供一种计算机设备。本发明的还一个目的在于提供一种可读介质。
为了达到以上目的,本发明一方面公开了一种前端HTTP请求处理方法,包括:
通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数;
根据所述自定义配置参数和预设请求实例形成封装请求;
将所述封装请求发送至对应的服务器以对所述封装请求进行处理。
优选的,进一步包括预先构建所述预设请求实例的步骤:
建立所述封装请求上下文信息;
根据预设配置参数进行所述上下文信息所需对象的初始化得到所述预设请求实例。
优选的,所述根据所述HTTP请求得到自定义配置参数具体包括:
解析所述HTTP请求的config配置文件得到开发人员的自定义配置参数。
优选的,所述根据所述自定义配置参数和预设请求实例形成封装请求具体包括:
根据所述HTTP请求确定对应的预设请求实例为目标请求实例;
根据所述自定义配置参数确定对应的预设配置参数;
采用所述自定义配置参数替换目标请求实例中对应的预设配置参数得到所述封装请求。
优选的,所述根据所述HTTP请求确定对应的预设请求实例为目标请求实例具体包括:
根据所述HTTP请求确定发送所述HTTP请求的终端类型;
根据所述终端类型确定预先设置的与所述终端类型对应的请求实例为目标请求实例。
优选的,进一步包括:
若对所述封装请求进行处理出现异常,通过拦截器拦截服务器反馈的异常信息;
对所述异常信息进行格式转换得到页面对象;
将所述页面对象发送至终端以使所述终端将所述页面对象展示给开发人员。
优选的,所述将所述封装请求发送至对应的服务器以对所述封装请求进行处理具体包括:
将所述封装请求进行对象序列化形成JSON字符串后发送至对应的服务器以对所述封装请求进行处理。
本发明还公开了一种前端HTTP请求处理装置,包括:
请求拦截模块,用于通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数;
请求封装模块,用于根据所述自定义配置参数和预设请求实例形成封装请求;
请求处理模块,用于将所述封装请求发送至对应的服务器以对所述封装请求进行处理。
优选的,进一步包括请求实例创建模块,用于建立所述封装请求上下文信息;根据预设配置参数进行所述上下文信息所需对象的初始化得到所述预设请求实例。
优选的,所述请求实例创建模块进一步用于根据所述HTTP请求确定对应的预设请求实例为目标请求实例;根据所述自定义配置参数确定对应的预设配置参数;采用所述自定义配置参数替换目标请求实例中对应的预设配置参数得到所述封装请求。
优选的,所述请求实例创建模块进一步用于根据所述HTTP请求确定发送所述HTTP请求的终端类型;根据所述终端类型确定预先设置的与所述终端类型对应的请求实例为目标请求实例。
优选的,进一步包括异常反馈模块,用于若对所述封装请求进行处理出现异常,通过拦截器拦截服务器反馈的异常信息;对所述异常信息进行格式转换得到页面对象;将所述页面对象发送至终端以使所述终端将所述页面对象展示给开发人员。
本发明还公开了一种前端HTTP请求处理系统,包括前端HTTP请求处理装置、终端及服务器;
所述前端HTTP请求处理装置通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数,根据所述自定义配置参数和预设请求实例形成封装请求,将所述封装请求发送至对应的服务器以对所述封装请求进行处理。
本发明还公开了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,
所述处理器执行所述程序时实现如上所述方法。
本发明还公开了一种计算机可读介质,其上存储有计算机程序,
该程序被处理器执行时实现如上所述方法。
本发明通过拦截器拦截终端发出的HTTP请求,对HTTP请求进行分析得到开发人员的自定义配置参数。根据开发人员自定义配置参数对预设请求实例进行处理得到封装请求,再将标准化实例封装处理后得到的封装请求传输至对应的服务器进行处理,以实现通过HTTP请求获取资源至终端的目的。本发明通过预设请求实例对开发人员的HTTP请求进行实例化封装,开发人员无需设置所有需要的参数,并且无需进行复杂的程序开发即可使终端形成HTTP请求,并发送HTTP请求至服务器进行处理,克服了现有前端HTTP请求形成过程中参数设置繁多等问题,能有效提升开发效率及增强程序本身健壮性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本发明前端HTTP请求处理方法一个具体实施例的流程图;
图2示出本发明前端HTTP请求处理方法一个具体实施例S000的流程图;
图3示出本发明前端HTTP请求处理方法一个具体实施例S200的流程图;
图4示出本发明前端HTTP请求处理方法一个具体实施例S210的流程图;
图5示出本发明前端HTTP请求处理方法一个具体实施例S400的流程图;
图6示出本发明前端HTTP请求处理装置一个具体实施例的结构图;
图7示出本发明前端HTTP请求处理装置一个具体实施例包括请求实例创建模块的结构图;
图8示出本发明前端HTTP请求处理装置一个具体实施例包括异常反馈模块的结构图;
图9示出适于用来实现本发明实施例的计算机设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本申请公开的前端HTTP请求处理方法、装置及系统可用于人工智能技术领域,也可用于除人工智能技术领域之外的任意领域,本申请公开的前端HTTP请求处理方法、装置及系统的应用领域不做限定。
针对现有技术中对HTTP请求参数的封装比较繁琐、复用性不高、不利于应用的快速开发与迭代、异常的处理不够统一、容易漏掉某些异常的处理或异常处理不完善等缺陷影响程序的健壮性的问题。本发明针对前端在http请求的发送、参数组织、跨域设定和返回处理等方面进行了封装与优化,提高代码的通用性和鲁棒性。
基于上述内容,本发明提供了一种前端HTTP请求处理方法、装置及系统,该前端HTTP请求处理装置可以与开发人员的终端设备之间通信连接,所述终端设备可以设有多个,前端HTTP请求处理装置具体可以通过应用服务器访问所述客户终端设备。
其中,所述前端HTTP请求处理装置可以通过拦截器拦截终端发出的HTTP请求,对HTTP请求进行分析得到开发人员的自定义配置参数。根据开发人员自定义配置参数对预设请求实例进行处理得到封装请求,再将标准化实例封装处理后得到的封装请求传输至对应的服务器进行处理,以实现通过HTTP请求获取资源至终端的目的。本发明通过预设请求实例对开发人员的HTTP请求进行实例化封装,开发人员无需设置所有需要的参数,并且无需进行复杂的程序开发即可使终端形成HTTP请求,并发送HTTP请求至服务器进行处理,克服了现有前端HTTP请求形成过程中参数设置繁多等问题,能有效提升开发效率及增强程序本身健壮性。
可以理解的是,所述终端设备可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
在另一实际应用情形中,进行前端HTTP请求处理的部分可以在如上述内容所述的前端HTTP请求处理装置中执行,也可以所有的操作都在所述终端设备中完成,即前端HTTP请求处理装置集成在终端中。具体可以根据所述终端设备的处理能力,以及开发人员开发场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述终端设备中完成,所述终端设备还可以包括处理器,用于进行前端HTTP请求处理的具体处理。
上述的终端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。例如,通信单元可以将封装请求发送至分类处理中心的服务器,以便服务器根据封装请求进行处理。通信单元还可以接收服务器返回的终端请求的资源。所述服务器可以包括任务调度等均衡服务器,其他的实施场景中也可以包括中间服务器,例如与均衡服务器有通信链接的第三方服务器平台的服务器。本发明所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
上述服务器与所述终端设备之间可以使用任何合适的网络协议进行通信,包括在本申请提交日尚未开发出的网络协议。所述网络协议例如可以包括TCP/IP协议、UDP/IP协议、HTTP协议、HTTPS协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的RPC协议(Remote Procedure Call Protocol,远程过程调用协议)、REST协议(Representational State Transfer,表述性状态转移协议)等。
根据本发明的一个方面,本实施例公开了一种前端HTTP请求处理方法。如图1所示,本实施例中,所述方法包括:
S100:通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数。
S200:根据所述自定义配置参数和预设请求实例形成封装请求。
S300:将所述封装请求发送至对应的服务器以对所述封装请求进行处理。
本发明通过拦截器拦截终端发出的HTTP请求,对HTTP请求进行分析得到开发人员的自定义配置参数。根据开发人员自定义配置参数对预设请求实例进行处理得到封装请求,再将标准化实例封装处理后得到的封装请求传输至对应的服务器进行处理,以实现通过HTTP请求获取资源至终端的目的。本发明通过预设请求实例对开发人员的HTTP请求进行实例化封装,开发人员无需设置所有需要的参数,并且无需进行复杂的程序开发即可使终端形成HTTP请求,并发送HTTP请求至服务器进行处理,克服了现有前端HTTP请求形成过程中参数设置繁多等问题,能有效提升开发效率增强程序本身健壮性。
在优选的实施方式中,如图2所示,所述方法进一步包括预先构建所述预设请求实例的步骤S000:
S010:建立所述封装请求上下文信息。
S020:根据预设配置参数进行所述上下文信息所需对象的初始化得到所述预设请求实例。
具体的,为了降低开发人员的开发复杂度,可预先设置请求实例,当终端发出HTTP请求后,可初始化形成与HTTP请求对应的请求实例,并根据HTTP请求对请求实例进行封装,形成标准化的封装请求。形成的封装请求可发送至对应的服务器以实现资源获取的目的。
在一个具体例子中,在预设请求实例过程中,可设置实例名称,例如icbcRequest。然后,形成请求实例中上下文信息,并完成上下文信息的所需对象的初始化。其中,实例对象通过bind方法将自身this指针绑定到上下文环境中。在请求封装阶段,可集成外部的自定义配置参数,开发人员通过API接口等形式发出的HTTP请求,根据HTTP请求中的自定义配置参数和预设请求实例形成封装请求时,自定义配置参数可覆盖预设配置参数得到标准化封装后的封装请求。
其中,预设配置参数可包括请求地址、请求方法、请求头header、请求数据、请求或响应数据的转换、请求进度、http状态码验证规则和超时等参数。预设配置参数中的至少部分是可以被替换的,即预设配置参数中的至少部分在进行请求封装时可采用开发人员设置的自定义配置参数对其进行替换,从而得到符合开发人员需求的HTTP请求。
在优选的实施方式中,如图3所示,所述S200根据所述自定义配置参数和预设请求实例形成封装请求具体包括:
S210:根据所述HTTP请求确定对应的预设请求实例为目标请求实例。
S220:根据所述自定义配置参数确定对应的预设配置参数。
S230:采用所述自定义配置参数替换目标请求实例中对应的预设配置参数得到所述封装请求。
具体的,可以理解的是,在该请求实例中,可预先设置默认的预设配置参数,根据预设配置参数可以生成请求实例。当用户需要对请求实例中的某些参数进行自定义设置时,可将自定义配置参数设置在HTTP请求中。通过拦截器拦截终端发出的HTTP请求,并从HTTP请求中分析得到自定义配置参数,采用自定义配置参数替换预设请求实例的预设配置参数,从而得到与开发人员需求相对应的封装请求,可避免开发人员参数设置遗漏或错误导致的开发失败等问题,同时也降低了开发人员的开发难度和复杂度,复用性高、利于应用的快速开发与迭代,可大幅度提高开发效率。其中,在具体例子中,可根据拦截的HTTP请求的config配置文件得到开发人员的自定义配置参数,对得到的data的自定义配置参数,例如,header、data和config.transformResponse,进行对象序列化形成JSON字符串以传输至对应的服务器进行处理。
在优选的实施方式中,如图4所示,所述S210根据所述HTTP请求确定对应的预设请求实例为目标请求实例具体可包括:
S211:根据所述HTTP请求确定发送所述HTTP请求的终端类型。
S212:根据所述终端类型确定预先设置的与所述终端类型对应的请求实例为目标请求实例。
具体的,在该优选的实施方式中,前端HTTP请求处理方法具备识别终端类型的功能,针对不同的终端类型,对HTTP请求进行不同的封装,例如浏览器使用XMLRequest、node使用http对象等。通过拦截器对浏览器或node发出的HTTP请求进行拦截,识别HTTP请求的终端类型是浏览器还是node,然后根据终端类型选择对应的XMLRequest或http对象请求实例进行请求封装。
在优选的实施方式中,如图5所示,所述方法进一步包括S400:
S410:若对所述封装请求进行处理出现异常,通过拦截器拦截服务器反馈的异常信息。
S420:对所述异常信息进行格式转换得到页面对象。
S430:将所述页面对象发送至终端以使所述终端将所述页面对象展示给开发人员。
具体的,针对现有技术中异常的处理不够统一、容易漏掉某些异常的处理或异常处理不完善等缺陷影响程序的健壮性的问题。在该优选的实施方式中,通过对异常信息进行拦截,并对异常信息进行格式转换得到终端的前端可以直接向工作人员展示的页面对象,可以避免现有技术中请求处理异常时向开发人员反馈异常信息时容易出现的异常处理不统一、遗漏或报错等现象,使开发人员可以直观的了解到请求处理过程中出现了何种异常。
其中,在具体例子中,在对所述异常信息进行格式转换得到页面对象时,可通过将异常信息中的JSON字符串转换为JavaScript对象、空配置项的默认值处理等方式对异常信息进行格式转换得到页面对象。
综上,本发明可避免终端中前端发送http请求时参数设置复杂的情况,通过统一规范的调用,可快速开发迭代程序。并且,本发明可对请求错误处理进行优化,帮助程序更全面地捕获异常,在最大程度上减少非常规的不可知因素(网络情况、服务器错误)导致的程序崩溃。
基于相同原理,本实施例还公开了本发明还公开了一种前端HTTP请求处理装置。如图6所示,本实施例中,所述装置包括请求拦截模块11、请求封装模块12和请求处理模块13。
其中,请求拦截模块11用于通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数。
请求封装模块12用于根据所述自定义配置参数和预设请求实例形成封装请求。
请求处理模块13用于将所述封装请求发送至对应的服务器以对所述封装请求进行处理。
本发明通过拦截器拦截终端发出的HTTP请求,对HTTP请求进行分析得到开发人员的自定义配置参数。根据开发人员自定义配置参数对预设请求实例进行处理得到封装请求,再将标准化实例封装处理后得到的封装请求传输至对应的服务器进行处理,以实现通过HTTP请求获取资源至终端的目的。本发明通过预设请求实例对开发人员的HTTP请求进行实例化封装,开发人员无需设置所有需要的参数,并且无需进行复杂的程序开发即可使终端形成HTTP请求,并发送HTTP请求至服务器进行处理,克服了现有前端HTTP请求形成过程中参数设置繁多等问题,能有效提升开发效率增强程序本身健壮性。
在优选的实施方式中,如图7所示,所述装置进一步包括请求实例创建模块10。请求实例创建模块10用于建立所述封装请求上下文信息;根据预设配置参数进行所述上下文信息所需对象的初始化得到所述预设请求实例。
具体的,为了降低开发人员的开发复杂度,可预先设置请求实例,当终端发出HTTP请求后,可初始化形成与HTTP请求对应的请求实例,并根据HTTP请求对请求实例进行封装,形成标准化的封装请求。形成的封装请求可发送至对应的服务器以实现资源获取的目的。
在优选的实施方式中,所述请求实例创建模块10进一步用于根据所述HTTP请求确定对应的预设请求实例为目标请求实例;根据所述自定义配置参数确定对应的预设配置参数;采用所述自定义配置参数替换目标请求实例中对应的预设配置参数得到所述封装请求。
具体的,可以理解的是,在该请求实例中,可预先设置默认的预设配置参数,根据预设配置参数可以生成请求实例。当用户需要对请求实例中的某些参数进行自定义设置时,可将自定义配置参数设置在HTTP请求中。通过拦截器拦截终端发出的HTTP请求,并从HTTP请求中分析得到自定义配置参数,采用自定义配置参数替换预设请求实例的预设配置参数,从而得到与开发人员需求相对应的封装请求,可避免开发人员参数设置遗漏或错误导致的开发失败等问题,同时也降低了开发人员的开发难度和复杂度,复用性高、利于应用的快速开发与迭代,可大幅度提高开发效率。其中,在具体例子中,可根据拦截的HTTP请求的config配置文件得到开发人员的自定义配置参数,对得到的data的自定义配置参数,例如,header、data和config.transformResponse,进行对象序列化形成JSON字符串以形成封装请求并传输至对应的服务器进行处理。
在优选的实施方式中,所述请求实例创建模块10进一步用于根据所述HTTP请求确定发送所述HTTP请求的终端类型;根据所述终端类型确定预先设置的与所述终端类型对应的请求实例为目标请求实例。
具体的,在该优选的实施方式中,前端HTTP请求处理方法具备识别终端类型的功能,针对不同的终端类型,对HTTP请求进行不同的封装,例如浏览器使用XMLRequest、node使用http对象等。通过拦截器对浏览器或node发出的HTTP请求进行拦截,识别HTTP请求的终端类型是浏览器还是node,然后根据终端类型选择对应的XMLRequest或http对象请求实例进行请求封装。
在优选的实施方式中,如图8所示,所述装置进一步包括异常反馈模块14。异常反馈模块14用于若对所述封装请求进行处理出现异常,通过拦截器拦截服务器反馈的异常信息;对所述异常信息进行格式转换得到页面对象;将所述页面对象发送至终端以使所述终端将所述页面对象展示给开发人员。
具体的,针对现有技术中异常的处理不够统一、容易漏掉某些异常的处理或异常处理不完善等缺陷影响程序的健壮性的问题。在该优选的实施方式中,通过对异常信息进行拦截,并对异常信息进行格式转换得到终端的前端可以直接向工作人员展示的页面对象,可以避免现有技术中请求处理异常时向开发人员反馈异常信息时容易出现的异常处理不统一、遗漏或报错等现象,使开发人员可以直观的了解到请求处理过程中出现了何种异常。
其中,在具体例子中,在对所述异常信息进行格式转换得到页面对象时,可通过将异常信息中的JSON字符串转换为JavaScript对象、空配置项的默认值处理等方式对异常信息进行格式转换得到页面对象。
综上,本发明可避免终端中前端发送http请求时参数设置复杂的情况,通过统一规范的调用,可快速开发迭代程序。并且,本发明可对请求错误处理进行优化,帮助程序更全面地捕获异常,在最大程度上减少非常规的不可知因素(网络情况、服务器错误)导致的程序崩溃。
由于该装置解决问题的原理与以上方法类似,因此本装置的实施可以参见方法的实施,在此不再赘述。
基于相同原理,本实施例还公开了一种前端HTTP请求处理系统。本实施例中,所述系统包括前端HTTP请求处理装置、终端及服务器。
其中,所述前端HTTP请求处理装置通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数,根据所述自定义配置参数和预设请求实例形成封装请求,将所述封装请求发送至对应的服务器以对所述封装请求进行处理。
由于该系统解决问题的原理与以上方法类似,因此本系统的实施可以参见方法的实施,在此不再赘述。
上述实施例阐明的装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机设备,具体的,计算机设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
在一个典型的实例中计算机设备具体包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述前端HTTP请求处理方法,或者,所述处理器执行所述程序时实现如上所述前端HTTP请求处理方法。
下面参考图9,其示出了适于用来实现本申请实施例的计算机设备600的结构示意图。
如图9所示,计算机设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM))603中的程序而执行各种适当的工作和处理。在RAM603中,还存储有计算机设备600操作所需的各种程序和数据。CPU601、ROM602、以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶反馈器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包括用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、装置或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (9)

1.一种前端HTTP请求处理方法,其特征在于,包括:
通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数;
根据所述自定义配置参数和预设请求实例形成封装请求;
将所述封装请求发送至对应的服务器以对所述封装请求进行处理;
进一步包括预先构建所述预设请求实例的步骤:
建立所述封装请求上下文信息;
根据预设配置参数进行所述上下文信息所需对象的初始化得到所述预设请求实例;
所述根据所述自定义配置参数和预设请求实例形成封装请求具体包括:
根据所述HTTP请求确定对应的预设请求实例为目标请求实例;
根据所述自定义配置参数确定对应的预设配置参数;
采用所述自定义配置参数替换目标请求实例中对应的预设配置参数得到所述封装请求。
2.根据权利要求1所述的前端HTTP请求处理方法,其特征在于,所述根据所述HTTP请求得到自定义配置参数具体包括:
解析所述HTTP请求的config配置文件得到开发人员的自定义配置参数。
3.根据权利要求1所述的前端HTTP请求处理方法,其特征在于,所述根据所述HTTP请求确定对应的预设请求实例为目标请求实例具体包括:
根据所述HTTP请求确定发送所述HTTP请求的终端类型;
根据所述终端类型确定预先设置的与所述终端类型对应的请求实例为目标请求实例。
4.根据权利要求1所述的前端HTTP请求处理方法,其特征在于,进一步包括:
若对所述封装请求进行处理出现异常,通过拦截器拦截服务器反馈的异常信息;
对所述异常信息进行格式转换得到页面对象;
将所述页面对象发送至终端以使所述终端将所述页面对象展示给开发人员。
5.根据权利要求1所述的前端HTTP请求处理方法,其特征在于,所述将所述封装请求发送至对应的服务器以对所述封装请求进行处理具体包括:
将所述封装请求进行对象序列化形成JSON字符串后发送至对应的服务器以对所述封装请求进行处理。
6.一种前端HTTP请求处理装置,其特征在于,包括:
请求拦截模块,用于通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数;
请求封装模块,用于根据所述自定义配置参数和预设请求实例形成封装请求;
请求处理模块,用于将所述封装请求发送至对应的服务器以对所述封装请求进行处理;
还包括请求实例创建模块,所述请求实例创建模块用于建立所述封装请求上下文信息;根据预设配置参数进行所述上下文信息所需对象的初始化得到所述预设请求实例;
所述请求实例创建模块进一步用于根据所述HTTP请求确定对应的预设请求实例为目标请求实例;根据所述自定义配置参数确定对应的预设配置参数;采用所述自定义配置参数替换目标请求实例中对应的预设配置参数得到所述封装请求。
7.一种前端HTTP请求处理系统,其特征在于,包括前端HTTP请求处理装置、终端及服务器;
所述前端HTTP请求处理装置通过拦截器拦截终端发出的HTTP请求,根据所述HTTP请求得到自定义配置参数,根据所述自定义配置参数和预设请求实例形成封装请求,将所述封装请求发送至对应的服务器以对所述封装请求进行处理;
所述前端HTTP请求处理装置进一步用于预先构建所述预设请求实例;
所述预先构建所述预设请求实例包括建立所述封装请求上下文信息;根据预设配置参数进行所述上下文信息所需对象的初始化得到所述预设请求实例;
所述根据所述自定义配置参数和预设请求实例形成封装请求具体包括:
根据所述HTTP请求确定对应的预设请求实例为目标请求实例;根据所述自定义配置参数确定对应的预设配置参数;采用所述自定义配置参数替换目标请求实例中对应的预设配置参数得到所述封装请求。
8.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,
所述处理器执行所述程序时实现如权利要求1-5任一项所述方法。
9.一种计算机可读介质,其上存储有计算机程序,其特征在于,
该程序被处理器执行时实现如权利要求1-5任一项所述方法。
CN202110178675.5A 2021-02-08 2021-02-08 前端http请求处理方法、装置及系统 Active CN112965739B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110178675.5A CN112965739B (zh) 2021-02-08 2021-02-08 前端http请求处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110178675.5A CN112965739B (zh) 2021-02-08 2021-02-08 前端http请求处理方法、装置及系统

Publications (2)

Publication Number Publication Date
CN112965739A CN112965739A (zh) 2021-06-15
CN112965739B true CN112965739B (zh) 2024-02-09

Family

ID=76284550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110178675.5A Active CN112965739B (zh) 2021-02-08 2021-02-08 前端http请求处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN112965739B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172896A (zh) * 2021-12-08 2022-03-11 深圳前海环融联易信息科技服务有限公司 前端接收后端文件流的处理方法
CN114553966A (zh) * 2022-01-21 2022-05-27 山东浪潮通软信息科技有限公司 一种前端的Http请求的构造方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656920A (zh) * 2015-10-30 2017-05-10 北京国双科技有限公司 Http服务的处理方法及装置
CN110138818A (zh) * 2018-02-09 2019-08-16 北京京东尚科信息技术有限公司 传递参数的方法、网站应用、系统、装置以及服务后端
CN111221591A (zh) * 2019-12-27 2020-06-02 中国建设银行股份有限公司 探测基于Kubernetes部署的微服务的可用性的方法、系统及介质
CN111314306A (zh) * 2020-01-17 2020-06-19 网易(杭州)网络有限公司 接口访问方法及装置、电子设备、存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656920A (zh) * 2015-10-30 2017-05-10 北京国双科技有限公司 Http服务的处理方法及装置
CN110138818A (zh) * 2018-02-09 2019-08-16 北京京东尚科信息技术有限公司 传递参数的方法、网站应用、系统、装置以及服务后端
CN111221591A (zh) * 2019-12-27 2020-06-02 中国建设银行股份有限公司 探测基于Kubernetes部署的微服务的可用性的方法、系统及介质
CN111314306A (zh) * 2020-01-17 2020-06-19 网易(杭州)网络有限公司 接口访问方法及装置、电子设备、存储介质

Also Published As

Publication number Publication date
CN112965739A (zh) 2021-06-15

Similar Documents

Publication Publication Date Title
US9143511B2 (en) Validation of conditional policy attachments
CN112965739B (zh) 前端http请求处理方法、装置及系统
US20070169015A1 (en) Web services development automation toolkit with test case driver and customized configuration file
US11640289B2 (en) Microservices cloud-native architecture for ubiquitous simulation as a service
CN110753020A (zh) 网络请求处理方法和装置
CN110795741B (zh) 对数据进行安全性处理的方法和装置
US20210389976A1 (en) Techniques to facilitate a migration process to cloud storage
WO2017143747A1 (zh) 一种移动终端网络请求方法及系统
CN105786476A (zh) 移动客户端与服务器之间的数据处理方法及系统
US8793398B2 (en) Facilitating client server interaction
CN112468585B (zh) 数据传输方法、装置、电子设备及存储介质
CN114040032A (zh) 一种协议转换方法、系统、存储介质及电子设备
CN113127335A (zh) 一种系统测试的方法和装置
CN111414154A (zh) 前端开发的方法、装置、电子设备和存储介质
CN111787041A (zh) 用于处理数据的方法和装置
CN111756916A (zh) 应用处理方法、装置、电子设备及计算机存储介质
CN113709171B (zh) 一种用于跨组件状态通信的方法和装置
CN113553206B (zh) 数据事件执行方法、装置、电子设备和计算机可读介质
US20230315692A1 (en) File sharing method, apparatus, and system
CN115454878A (zh) 一种应用于微服务的接口调用测试方法及相关装置
CN112257039B (zh) 身份属性添加方法、装置和电子设备
CN113760487B (zh) 一种业务处理方法和装置
CN112929453A (zh) 一种共享session数据的方法和装置
Pop et al. A Service Oriented Architecture Approach for an E-Business Platform
CN113326060A (zh) 业务请求处理方法、装置和系统以及业务配置方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant