CN112822020B - 网络请求方法、装置、计算机设备及存储介质 - Google Patents
网络请求方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112822020B CN112822020B CN202011621572.3A CN202011621572A CN112822020B CN 112822020 B CN112822020 B CN 112822020B CN 202011621572 A CN202011621572 A CN 202011621572A CN 112822020 B CN112822020 B CN 112822020B
- Authority
- CN
- China
- Prior art keywords
- network request
- terminal
- request data
- application program
- native
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000004044 response Effects 0.000 claims abstract description 65
- 238000012795 verification Methods 0.000 claims abstract description 40
- 238000004891 communication Methods 0.000 claims description 47
- 230000008859 change Effects 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 10
- 238000007726 management method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 241001275944 Misgurnus anguillicaudatus Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0464—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3268—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种网络请求方法、装置、计算机设备及存储介质,通过原生端通过原生网络请求程序接收应用程序端发送的网络请求数据,原生网络请求程序是指原生端中通过原生代码编写的程序;原生端采用服务端证书对网络请求数据进行强校验,判断网络请求数据是否满足预设要求;若网络请求数据满足预设要求,原生端则通过原生网络请求程序将网络请求数据发送至服务端;原生端接收服务端基于网络请求数据返回的响应信息,并将响应信息发送至应用程序端中;应用程序端基于响应信息对当前页面进行更新显示;应用程序端通过代理到原生端向服务端发送网络请求,从而提高了网络请求的通用性,解决了请求跨域问题的。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种网络请求方法、装置、计算机设备及存储介质。
背景技术
随着智能移动终端的快速发展,在移动开发中移动终端需要对后台进行网络请求。然而目前的请求网络方法仍存在很多局限性,比如跨域问题。其中,H5进行网络请求时存在的最常见问题就是跨域,虽然目前可以通过一些途径或方法来解决跨域问题。例如:Android系统的H5的请求可以通过谷歌浏览器的devTools直接查看请求的出参入参和数据体;Ios系统的H5的请求可以通过safari查看相关请求,但其在安全性上存在一定的欠缺,无法保证数据的安全性,因此,如何在保证安全性的情况下,跨域成了本领域的技术人员亟待解决的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种网络请求方法、装置、计算机设备及存储介质,以解决进行网络请求时无法实现跨域的问题。
一种网络请求方法,包括:
所述原生端通过原生网络请求程序接收所述应用程序端发送的网络请求数据,所述原生网络请求程序是指所述原生端中通过原生代码编写的程序;
所述原生端采用服务端证书对所述网络请求数据进行强校验,判断所述网络请求数据是否满足预设要求;
若所述网络请求数据满足所述预设要求,所述原生端则通过所述原生网络请求程序将所述网络请求数据发送至服务端;
所述原生端接收所述服务端基于所述网络请求数据返回的响应信息,并将所述响应信息发送至所述应用程序端中;
所述应用程序端基于所述响应信息对当前页面进行更新显示。
一种用户行为数据采集装置,包括:
第一接收模块,用于所述原生端通过原生网络请求程序接收所述应用程序端发送的网络请求数据,所述原生网络请求程序是指所述原生端中通过原生代码编写的程序;
强校验模块,用于所述原生端采用服务端证书对所述网络请求数据进行强校验,判断所述网络请求数据是否满足预设要求;
第一发送模块,用于在所述网络请求数据满足所述预设要求时,所述原生端通过所述原生网络请求程序将所述网络请求数据发送至服务端;
第二接收模块,用于所述原生端接收所述服务端基于所述网络请求数据返回的响应信息,并将所述响应信息发送至所述应用程序端中;
更新显示模块,用于所述应用程序端基于所述响应信息对当前页面进行更新显示。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现上述网络请求方法。
一种可读存储介质,其中可读存储介质有一个或多个,存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如上述网络请求方法。
上述网络请求方法、装置、计算机设备及存储介质,通过原生端通过原生网络请求程序接收应用程序端发送的网络请求数据,原生网络请求程序是指原生端中通过原生代码编写的程序;原生端采用服务端证书对网络请求数据进行强校验,判断网络请求数据是否满足预设要求;若网络请求数据满足预设要求,原生端则通过原生网络请求程序将网络请求数据发送至服务端;原生端接收服务端基于网络请求数据返回的响应信息,并将响应信息发送至应用程序端中;应用程序端基于响应信息对当前页面进行更新显示;应用程序端通过代理到原生端向服务端发送网络请求,从而提高了网络请求的通用性,不用管有多少个后台,均可以完全规避请求跨域问题的;另外通过原生端的证书校验功能,提高了网络请求的安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中网络请求方法的一应用环境示意图;
图2是本发明一实施例中网络请求方法的一流程示意图;
图3是本发明一实施例中网络请求方法的另一流程示意图;
图4是本发明一实施例中网络请求方法的另一流程示意图;
图5是本发明一实施例中网络请求方法的另一流程示意图;
图6是本发明一实施例中网络请求方法的另一流程示意图;
图7是本发明一实施例中用户行为网络请求装置的一结构示意图;
图8是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例提供的网络请求方法,可应用在如图1的应用环境中,其中,客户端与服务端进行通信。其中,客户端包括但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图2所示,提供一种网络请求方法,以该方法应用在图1中的客户端为例进行说明,所述客户端包括应用程序端和原生端,包括如下步骤:
S10:原生端通过原生网络请求程序接收应用程序端发送的网络请求数据,原生网络请求程序是指原生端中通过原生代码编写的程序。
其中,原生网络请求程序为通过原生代码编写的程序。可选地,原生网络请求程序为通过操作系统原生代码编写的程序。比如:可以为通过iOS操作系统、安卓(Android)操作系统或其他操作系统的原生代码编写的程序。可选地,该原生网络请求程序可以采用Objective-c语言、Java语言或JavaScript语言等。
其中,网络请求数据是指用户在应用程序端页面上生成的用于向网络发送请求以获取反馈结果的请求数据。可选地,网络请求可以是HTTP请求、HTTPS请求、传输控制协议请求、用户数据报协议请求、快速互联网连接协议请求中的任意一种,可选地,该网络请求还可以实现为其他网络协议的请求,本公开实施例对此不加以限定。可选地,网络请求数据可以由用户在应用程序端页面上触发操作时生成的数据,也可以是应用程序端页面根据已设定的定时器生成的数据,还可以是应用程序端页面根据自动显示的内容生成的数据等,本实施例对此不做具体限定。在本实施例中,应用程序端页面优选为H5页面。
示例性地,以用户在H5页面上触发操作时生成的数据为例进行说明。比如:用户在对H5页面进行点击操作时,接收在H5页面上的点击操作,根据点击操作生成网络请求数据,该网络请求数据用于请求点击操作后的显示的内容。当然网络请求数据还可以是根据其他在H5页面上触发的事件生成的数据,本实施例对此不做具体限定。
具体地,当用户在客户端的应用程序端页面(如H5页面)上执行触发操作生成网络请求数据向服务端发起请求时,由于客户端上预先构建有原生端的通信请求框架,此时原生端拦截应用程序端的网络请求数据,对于服务端而言,原生端充当应用程序端的角色,与服务端进行数据交互。对于应用程序端而言,原生端充当服务端的角色,应用程序端向原生端进行请求和数据交互。可以理解地,原生端作为应用程序端与服务端之间进行数据交互的“中间人代理”。可以理解地,原生端和应用程序端实质为客户端的两种不同表现形式,原生端为采用客户端中的操作系统原生代码(比如:Android代码和Ios代码)所定义的。应用程序端为采用客户端中的应用程序代码(比如:H5代码)所定义的。
在本实施例中,应用程序端(H5端)可以通过扩展函数的方法,在通过aJax框架发送网络请求数据时,挂载到原生端提供的通信请求框架上,对于应用程序端(H5端)的开发在调用时明面还是使用自己的ajax框架,但实际上已经代理到了原生端提供的通信请求框架上。
S20:原生端采用服务端证书对网络请求数据进行强校验,判断网络请求数据是否满足预设要求。
其中,服务端证书为SSL数字证书的一种形式,意指通过提交数字证书来证明身份或表明有权访问在线服务。通过使用服务端证书可为不同站点提供身份鉴定并保证该站点拥有高强度加密安全。在一具体实施例中,原生端上已预先导入了对应的服务端证书,并在进行数据交互之前,服务端已预先将该服务端证书发送至原生端的数据库进行保存;原生端在接收到网络请求数据时,可直接调用该服务端证书对网络请求数据进行强校验,判断网络请求数据是否满足预设要求。
具体地,通常为了保证数据的可靠和保密性,应用程序端向服务端所发送的数据都为采用密钥或者ssl客户端证书进行加密后的密文数据,然后服务端再采用对应的密钥或ssl服务端证书,对接收到的应用程序端发送的密文数据进行解密,以校验双方身份的真实性。在本实施例中,原生端采用服务端证书对网络请求数据进行强校验可以具体体现为:原生端首先充当服务端的身份采用服务端证书对应用程序端发送的密文数据进行解密,若解密成功则表示对网络请求数据的强校验成功,判断网络请求数据满足预设要求;若解密失败则表示对网络请求数据的强校验失败,判断网络请求数据不满足预设要求。
S30:若网络请求数据满足预设要求,原生端则通过原生网络请求程序将网络请求数据发送至服务端。
具体地,若根据步骤S40得到网络请求数据满足预设要求,即对网络请求数据的强校验成功,原生端则通过原生网络请求程序将网络请求数据发送至服务端。在一具体实施例中,由于原生端在采用服务端证书对网络请求数据进行强校验的时候对经加密的网络请求数据进行了解密,因此,在本步骤中,原生端还需采用ssl客户端证书对解密后的网络请求数据进行加密,还原应用程序端最初发送的网络请求数据,并将还原后的网络请求数据通过原生网络请求程序发送至服务端。其中,ssl客户端证书是遵守ssl协议的一种数字证书,将SSL证书安装在网站服务器上,可实现网站真实身份验证和数据加密传输的双重功能。
S40:原生端接收服务端基于网络请求数据返回的响应信息,并将响应信息发送至应用程序端中。
其中,响应信息为服务端响应网络请求数据所生成的信息。由于网络请求数据中包含有应用程序端所请求获取的数据的类型,当服务端通过ssl服务端证书对该网络请求数据进行解密后,会响应该网络请求数据反馈一个对应类型的响应信息。进一步地,为了保证数据传输的可靠性和保密性,服务端在将生成的响应信息返回之前,会先采用ssl服务端证书对该响应信息进行加密后,再通过通信网络向应用程序端反馈,该响应信息经原生端拦截,即原生端接收服务端响应于网络请求数据返回的响应信息,再将该响应信息发送至应用程序端中。
S50:应用程序端基于响应信息对当前页面进行更新显示。
具体地,应用程序端在接收到原生端返回的响应信息之后,基于该响应信息对当前页面进行更新显示。例如:若应用程序端发送的网络请求数据为用户在应用程序端的H5页面的http://www.baidu.com链接上执行点击跳转操作时生成的数据,则应用程序端在接收到服务端响应于该网络请求数据返回的响应信息之后,会自动转跳到该点击链接http://www.baidu.com所对应的目标页面;通过原生端向服务端发送网络请求,从而提高了网络请求的通用性,不用管有多少个后台,均可以完全规避请求跨域问题的;另外通过原生端的证书校验功能,提高了网络请求的安全性。
在本实施例中,原生端通过原生网络请求程序接收应用程序端发送的网络请求数据,原生网络请求程序是指原生端中通过原生代码编写的程序;原生端采用服务端证书对网络请求数据进行强校验,判断网络请求数据是否满足预设要求;若网络请求数据满足预设要求,原生端则通过原生网络请求程序将网络请求数据发送至服务端;原生端接收服务端基于网络请求数据返回的响应信息,并将响应信息发送至应用程序端中;应用程序端基于响应信息对当前页面进行更新显示;应用程序端通过代理到原生端向服务端发送网络请求,从而提高了网络请求的通用性,不用管有多少个后台,均可以完全规避请求跨域问题的;另外通过原生端的证书校验功能,提高了网络请求的安全性。
在一实施例中,在原生端通过原生网络请求程序接收应用程序端发送的网络请求数据之前,网络请求方法还具体包括如下步骤:
S11:构建原生端的通信请求框架,原生端的通信请求框架包括原生网络请求程序。
其中,原生端的通信请求框架为采用操作系统原生代码所定义的aJax框架。比如:可以为iOS操作系统、安卓(Android)操作系统或其他操作系统的原生代码所定义的aJax框架。aJax框架为把aJax进行封装的框架。aJax是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务端进行少量数据交换,aJax可以使网页实现异步更新,可以在不重新加载整个网页的情况下,对网页的某部分进行更新。aJax框架主要包括jQuery,Mootools,Dojo,Ext JS等等。用户可根据项目需求选取任意一种类型的aJax框架。需要说明是,本实施例中的原生端为客户端的其中一种表现形式,是采用客户端里面的操作系统原生代码(比如:Android代码和Ios代码)所定义的。
具体地,首先在客户端中构建一种原生端的通信请求框架,然后对构建的原生端的通信请求框架进行JS注解。原生端的通信请求框架包括原生网络请求程序。
在一实施例中,如图3所示,原生端采用服务端证书对网络请求数据进行强校验,具体包括如下步骤:
S201:获取服务端证书,将服务端证书导入设定目录中。
其中,服务端证书证书为服务端的https证书,为SSL数字证书的一种形式,意指通过提交数字证书来证明身份或表明有权访问在线服务。设定目录为预先设定的用于存储服务端证书的目录。在本实施例中,设定目录优选为assets目录,即原生端在获取到服务端发送得到服务端证书后,将服务端证书导入项目的assets目录中进行存储。另外地,还可以预先在assets目录中创建一个https文件夹,用于存储服务端证书。原生端在获取到服务端发送得到服务端证书后,将该服务端证书导入assets目录的https文件夹中。
S202:在接收到应用程序端发送的网络请求数据时,将服务端证书加载到原生网络请求程序中。
具体地,当用户在应用程序端页面上触发操作生成网络请求数据,原生端接收到应用程序端发送的该网络请求数据时,会将该服务端证书加载到原生网络请求程序中,以便后续采用原生网络请求程序对该服务端证书进行解析处理。
S203:采用原生网络请求程序对服务端证书进行解析,获取服务端证书的后端地址。
其中,服务端的后端地址为后台服务端的地址。服务端证书中包含有后端地址。具体地,原生端在将服务端证书加载到原生网络请求程序之后,采用原生网络请求程序对该服务端证书进行解析,从服务端证书中获取到后端地址。
S204:采用后端地址对网络请求数据进行强校验。
具体地,在获取到后端地址之后,采用该后端地址对网络请求数据进行强校验,即将网络请求数据中携带的请求地址与从服务端证书中解析出的后端地址进行匹配,若网络请求数据中携带的请求地址与从服务端证书中解析出的后端地址相匹配,则表示网络请求数据校验成功,若网络请求数据中携带的请求地址与从服务端证书中解析出的后端地址不相匹配成功,则表示网络请求数据校验失败。
在本实施例中,获取服务端证书,将服务端证书导入设定目录中;在接收到应用程序端发送的网络请求数据时,将服务端证书加载到原生网络请求程序中;采用原生网络请求程序对服务端证书进行解析,获取服务端证书的后端地址;采用后端地址对网络请求数据进行强校验;通过原生端的证书强校验功能,从而提高了网络请求的安全性。
在一实施例中,如图4所示,在原生端通过原生网络请求程序接收应用程序端发送的网络请求数据之前,该网络请求方法还具体包括如下步骤:
S21:根据预设策略建立通信通道,通信通道用于建立应用程序端和原生端之间的通信关系。
其中,通信通道为用于在应用程序端和原生端之间建立通信关系。可选地,预设策略可以为采用jsBridge方法建立应用程序端和原生端之间的通信关系。具体地,在应用程序端的代码逻辑中定义通信方法(比如:jsBridge方法),该通信方法用于应用程序端与原生端之间进行通信,应用程序端就能够通过jsBridge方法给原生端发送网络请求数据。
S22:在原生网络请求程序中注册通信通道。
具体地,在建立应用程序端和原生端之间的通信关系之后,还需要在原生网络请求程序中注册该通信通道。可选地,以上述jsBridge方法为例,当在应用程序端的代码逻辑中定义有该jsBridge方法之后,在原生网络请求程序中注册该jsBridge方法。
S23:响应于在应用程序端页面上生成的网络请求事件,获取网络请求事件对应的网络请求数据。
其中,网络请求事件可以是由用户在应用程序端页面上触发操作时生成的事件;或,网络请求事件也可以是已设定的定时器达到定时时长的事件,也即网络请求数据可以是应用程序端页面根据已设定的定时器生成的数据;或,网络请求事件还可以是应用程序端页面的显示内容自动更新的事件,也即网络请求数据可以是应用程序端页面根据自动显示的内容生成的数据,本公开实施例对此不加以限定。可选地,网络请求数据中包括网络请求参数,网络请求参数包括网络请求的请求地址、网络请求的请求方法、网络请求的请求参数、网络请求的请求头中的至少一种。
S24:应用程序端将网络请求数据通过通信通道发送至原生端。
具体地,应用程序端在检测到用户在应用程序端页面上触发操作生成网络请求数据之后,以请求HTTP为例,将包含请求地址、请求方法、请求参数、请求头等信息参数的网络请求数据通过通信通道发送至原生端。
在本实施例中,根据预设策略建立通信通道,通信通道用于建立应用程序端和原生端之间的通信关系;在原生网络请求程序中注册通信通道;响应于在应用程序端页面上生成的网络请求事件,获取网络请求事件对应的网络请求数据;应用程序端将网络请求数据通过通信通道发送至原生端;应用程序端将网络请求数据通过通信通道发送至原生端;从而提高了网络请求的安全性,确保程序运行的速度,避免系统崩溃等后果。
在一实施例中,如图5所示,原生端通过原生网络请求程序接收所述应用程序端发送的网络请求数据之前,该网络请求方法还具体包括如下步骤:
S101:采用预设脚本对应用程序端进行实时监听。
其中,预设脚本指可对应用程序端进行实时监听和控制的脚本。可选地,该预设脚本可以为包含有js监听代码的脚本,以实现对应用程序端的实时监听。在本实施例中,预设脚本为用户预先通过java编译好的二进制jar包,该jar包不但可对应用程序端进行实时监听,还可以控制(hook)应用程序端中的所有资源,包含每一应用程序运行时的内存状态、类、方法等。具体地,预先在应用程序端插入预设脚本,以对应用程序端进行实时监听,当应用程序端进程启动时,接管该应用进程,以便控制应用程序端中启动的应用程序的所有资源。
S102:若预设脚本检测到应用程序端发生变化,则获取应用程序端对应的变化类型。
具体地,若预设脚本检测到应用程序端发生变化,则接管该应用程序端进程,并监控该应用程序端的所用资源,以进一步确定该应用程序端的变化类型。可以理解地,通过预设脚本可以实时监听应用程序端的变动,包括应用程序端的数据发送、数据接收和数据保存。通过预先对预设脚本的配置,可以对应用程序端的具体变动类型进行反馈。因此,在预设脚本检测到应用程序端发生变化之后,可直接确定该应用程序端对应的变化类型,以进行对应的处理。
S103:若变化类型为数据发送,则指示原生端通过原生网络请求程序接收应用程序端发送的网络请求数据。
具体地,若变化类型为数据发送,即检测到应用程序端开始向服务端发送网络请求数据,则触发原生端以指示原生端通过原生网络请求程序接收应用程序端发送的网络请求数据。例如:若监听到应用程序端的H5页面发生变化,用户在H5页面上执行了触发操作生成网络请求数据,则指示原生端通过原生网络请求程序接收应用程序端的H5页面发送的网络请求数据。
在本实施例中,采用预设脚本对应用程序端进行实时监听;若预设脚本检测到应用程序端发生变化,则获取应用程序端对应的变化类型;若变化类型为数据发送,则指示原生端通过原生网络请求程序接收应用程序端发送的网络请求数据;从而保证了后续应用程序端可以通过代理到原生端与服务端建立网络通信,以规避请求跨域的问题。
在一实施例中,如图6所示,应用程序端基于响应信息对当前页面进行更新显示,具体包括如下步骤:
S501:若响应信息为字节流形式的响应信息,则对字节流形式的响应信息进行解码,生成数据信息。
在一具体实施例中,服务端针对网络请求数据所反馈的响应信息可能是字节流形式的信息,即应用程序端接收到的服务端针对该网络请求数据的响应信息是字节流形式的信息。因此,在本步骤中,若响应信息为字节流形式的响应信息,则应用程序端在将接收到该响应信息进行更新显示时,需先将该响应信息解码成正常的数据信息。
S502:对数据信息进行处理,以对当前页面进行更新显示。
具体地,应用程序端在获得数据信息后,对该数据信息进行相应的处理,以对当前页面进行更新显示。例如,使用该数据信息中的内容以实现相应的功能等。通过这种方式,可以避免信息传递过程中的数据偏差。
在本实施例中,若响应信息为字节流形式的响应信息,则对字节流形式的响应信息进行解码,生成数据信息;对数据信息进行处理,以对当前页面进行更新显示;从而可以避免信息传递过程中的数据偏差。
在一实施例中,在应用程序端基于响应信息对当前页面进行更新显示之后,网络请求方法还具体包括如下步骤:
将响应信息储至区块链系统的区块链上。
其中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
在本实施例中,在应用程序端基于响应信息对当前页面进行更新显示之后,通过将响应信息存储至区块链系统的区块链上,从而避免了数据的泄露风险,提高了数据的安全性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种网络请求装置,该网络请求装置与上述实施例中网络请求方法一一对应。如图7所示,该网络请求装置包括第一接收模块10、强校验模块20、第一发送模块30、第二接收模块40和更新显示模块50。各功能模块详细说明如下:
第一接收模块10,用于所述原生端通过所述原生网络请求程序接收所述应用程序端发送的网络请求数据,所述原生网络请求程序是指所述原生端中通过原生代码编写的程序;
强校验模块20,用于所述原生端采用服务端证书对所述网络请求数据进行强校验,判断所述网络请求数据是否满足预设要求;
第一发送模块30,用于在所述网络请求数据满足所述预设要求时,所述原生端通过所述原生网络请求程序将所述网络请求数据发送至服务端;
第二接收模块40,用于所述原生端接收所述服务端基于所述网络请求数据返回的响应信息,并将所述响应信息发送至所述应用程序端中;
更新显示模块50,用于所述应用程序端基于所述响应信息对当前页面进行更新显示。
优选地,网络请求装置还包括:
构建模块,用于构建原生端的通信请求框架,所述原生端的通信请求框架包括所述原生网络请求程序。
优选地,强校验模块30包括:
导入单元,用于获取服务端证书,将所述服务端证书导入设定目录中;
加载单元,用于在接收到所述应用程序端发送的网络请求数据时,将所述服务端证书加载到所述原生网络请求程序中;
解析单元,用于采用所述原生网络请求程序对所述服务端证书进行解析,获取所述服务端证书的后端地址;
强校验单元,用于采用所述后端地址对所述网络请求数据进行强校验。
优选地,网络请求装置还包括:
建立模块,用于根据预设策略建立通信通道,所述通信通道用于建立所述应用程序端和所述原生端之间的通信关系;
注册模块,用于在所述原生网络请求程序中注册所述通信通道;
响应模块,用于响应于在应用程序端页面上生成的网络请求事件,获取所述网络请求事件对应的网络请求数据;
第二发送模块,用于所述应用程序端将所述网络请求数据通过所述通信通道发送至所述原生端。
优选地,网络请求装置还包括:
监听模块,用于采用预设脚本对所述应用程序端进行实时监听;
获取模块,用于在所述预设脚本检测到所述应用程序端发生变化时,获取所述应用程序端对应的变化类型;
指示模块,用于在所述变化类型为数据发送时,指示原生端通过所述原生网络请求程序接收所述应用程序端发送的网络请求数据。
优选地,更新显示模块60包括:
解码单元,用于在所述响应信息为字节流形式的响应信息时,对所述字节流形式的响应信息进行解码,生成数据信息;
处理单元,用于对所述数据信息进行处理,以对当前页面进行更新显示。
优选地,网络请求装置还包括:
存储模块,用于将所述响应信息存储至区块链系统的区块链上。
关于网络请求装置的具体限定可以参见上文中对于网络请求方法的限定,在此不再赘述。上述网络请求装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括可读存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令。该内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的网络接口用于与外部服务器通过网络连接通信。该计算机可读指令被处理器执行时以实现一种网络请求方法。本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令,处理器执行计算机可读指令时实现上述网络请求方法中的实施例。
在一个实施例中,提供了一个或多个存储有计算机可读指令的计算机可读存储介质,本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。可读存储介质上存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时实现上述网络请求方法中的实施例。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性可读取存储介质或易失性可读存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (9)
1.一种网络请求方法,其特征在于,所述网络请求方法应用于客户端中,所述客户端包括应用程序端和原生端,包括:
所述原生端通过原生网络请求程序接收所述应用程序端发送的网络请求数据,所述原生网络请求程序是指所述原生端中通过原生代码编写的程序;
所述原生端采用服务端证书对所述网络请求数据进行强校验,判断所述网络请求数据是否满足预设要求;
所述原生端采用服务端证书对所述网络请求数据进行强校验,包括:
获取服务端证书,将所述服务端证书导入设定目录中;
在接收到所述应用程序端发送的网络请求数据时,将所述服务端证书加载到所述原生网络请求程序中;
采用所述原生网络请求程序对所述服务端证书进行解析,获取所述服务端证书的后端地址;
采用所述后端地址对所述网络请求数据进行强校验;所述强校验是指将网络请求数据中携带的请求地址与从服务端证书中解析出的后端地址进行匹配,若网络请求数据中携带的请求地址与从服务端证书中解析出的后端地址相匹配,则表示网络请求数据校验成功,并确认所述网络请求数据满足预设要求;
若所述网络请求数据满足所述预设要求,所述原生端则通过所述原生网络请求程序将所述网络请求数据发送至服务端;
所述原生端接收所述服务端基于所述网络请求数据返回的响应信息,并将所述响应信息发送至所述应用程序端中;
所述应用程序端基于所述响应信息对当前页面进行更新显示。
2.如权利要求1所述的网络请求方法,其特征在于,在所述原生端通过原生网络请求程序接收所述应用程序端发送的网络请求数据之前,所述网络请求方法还包括:
构建原生端的通信请求框架,所述原生端的通信请求框架包括所述原生网络请求程序。
3.如权利要求1所述的网络请求方法,其特征在于,所述原生端通过所述原生网络请求程序接收所述应用程序端发送的网络请求数据之前,所述网络请求方法还包括:
根据预设策略建立通信通道,所述通信通道用于建立所述应用程序端和所述原生端之间的通信关系;
在所述原生网络请求程序中注册所述通信通道;
响应于在应用程序端页面上生成的网络请求事件,获取所述网络请求事件对应的网络请求数据;
所述应用程序端将所述网络请求数据通过所述通信通道发送至所述原生端。
4.如权利要求1所述的网络请求方法,其特征在于,所述原生端通过所述原生网络请求程序接收所述应用程序端发送的网络请求数据之前,所述网络请求方法还包括:
采用预设脚本对所述应用程序端进行实时监听;
若所述预设脚本检测到所述应用程序端发生变化,则获取所述应用程序端对应的变化类型;
若所述变化类型为数据发送,则指示原生端通过所述原生网络请求程序接收所述应用程序端发送的网络请求数据。
5.如权利要求1所述的网络请求方法,其特征在于,所述应用程序端基于所述响应信息对当前页面进行更新显示,包括:
若所述响应信息为字节流形式的响应信息,则对所述字节流形式的响应信息进行解码,生成数据信息;
对所述数据信息进行处理,以对当前页面进行更新显示。
6.如权利要求1所述的网络请求方法,其特征在于,在所述应用程序端基于所述响应信息对当前页面进行更新显示之后,所述网络请求方法还包括:
将所述响应信息存储至区块链系统的区块链上。
7.一种网络请求装置,其特征在于,包括:
构建模块,用于构建原生端的通信请求框架,所述原生端的通信请求框架包括原生网络请求程序;
第一接收模块,用于所述原生端通过所述原生网络请求程序接收应用程序端发送的网络请求数据;
强校验模块,用于所述原生端采用服务端证书对所述网络请求数据进行强校验,判断所述网络请求数据是否满足预设要求;
所述强校验模块包括:
导入单元,用于获取服务端证书,将所述服务端证书导入设定目录中;
加载单元,用于在接收到所述应用程序端发送的网络请求数据时,将所述服务端证书加载到所述原生网络请求程序中;
解析单元,用于采用所述原生网络请求程序对所述服务端证书进行解析,获取所述服务端证书的后端地址;
强校验单元,用于采用所述后端地址对所述网络请求数据进行强校验;所述强校验是指将网络请求数据中携带的请求地址与从服务端证书中解析出的后端地址进行匹配,若网络请求数据中携带的请求地址与从服务端证书中解析出的后端地址相匹配,则表示网络请求数据校验成功,并确认所述网络请求数据满足预设要求;
第一发送模块,用于在所述网络请求数据满足所述预设要求时,所述原生端通过所述原生网络请求程序将所述网络请求数据发送至服务端;
第二接收模块,用于所述原生端接收所述服务端基于所述网络请求数据返回的响应信息,并将所述响应信息发送至所述应用程序端中;
更新显示模块,用于所述应用程序端基于所述响应信息对当前页面进行更新显示。
8.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如权利要求1至6中任一项所述网络请求方法。
9.一种可读存储介质,其中可读存储介质有一个或多个,其特征在于,存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1至6中任一项所述网络请求方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011621572.3A CN112822020B (zh) | 2020-12-30 | 2020-12-30 | 网络请求方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011621572.3A CN112822020B (zh) | 2020-12-30 | 2020-12-30 | 网络请求方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112822020A CN112822020A (zh) | 2021-05-18 |
CN112822020B true CN112822020B (zh) | 2023-12-12 |
Family
ID=75856156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011621572.3A Active CN112822020B (zh) | 2020-12-30 | 2020-12-30 | 网络请求方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112822020B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109327470A (zh) * | 2018-11-28 | 2019-02-12 | 郑州云海信息技术有限公司 | 一种用于实现ssl加密传输的方法和装置 |
CN111198998A (zh) * | 2019-12-31 | 2020-05-26 | 北京指掌易科技有限公司 | 基于Ajax请求的网络页面加载方法、装置及系统 |
CN111800426A (zh) * | 2020-07-07 | 2020-10-20 | 腾讯科技(深圳)有限公司 | 应用程序中原生代码接口的访问方法、装置、设备及介质 |
WO2020233308A1 (zh) * | 2019-05-22 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 基于本地证书的自校验方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7581244B2 (en) * | 2006-01-25 | 2009-08-25 | Seiko Epson Corporation | IMX session control and authentication |
-
2020
- 2020-12-30 CN CN202011621572.3A patent/CN112822020B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109327470A (zh) * | 2018-11-28 | 2019-02-12 | 郑州云海信息技术有限公司 | 一种用于实现ssl加密传输的方法和装置 |
WO2020233308A1 (zh) * | 2019-05-22 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 基于本地证书的自校验方法、装置、设备及存储介质 |
CN111198998A (zh) * | 2019-12-31 | 2020-05-26 | 北京指掌易科技有限公司 | 基于Ajax请求的网络页面加载方法、装置及系统 |
CN111800426A (zh) * | 2020-07-07 | 2020-10-20 | 腾讯科技(深圳)有限公司 | 应用程序中原生代码接口的访问方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112822020A (zh) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110365670B (zh) | 黑名单共享方法、装置、计算机设备和存储介质 | |
US20200389456A1 (en) | Authenticating a user device associated with a user to communicate via a wireless network in a secure web-based environment | |
CN111949953B (zh) | 基于区块链的身份认证方法、系统、装置和计算机设备 | |
US11676133B2 (en) | Method and system for mobile cryptocurrency wallet connectivity | |
US9852300B2 (en) | Secure audit logging | |
CN110781509B (zh) | 数据验证方法、装置、存储介质和计算机设备 | |
CN111107073B (zh) | 应用自动登录方法、装置、计算机设备和存储介质 | |
CN111740966B (zh) | 一种基于区块链网络的数据处理方法及相关设备 | |
CN111131416B (zh) | 业务服务的提供方法和装置、存储介质、电子装置 | |
KR101744747B1 (ko) | 휴대 단말기, 단말기 및 보안쿠키를 이용한 인증 방법 | |
CN111241555B (zh) | 模拟用户登录的访问方法、装置、计算机设备和存储介质 | |
CN112738117A (zh) | 数据传输方法、装置、系统和存储介质及电子装置 | |
CN111538977B (zh) | 云api密钥的管理、云平台的访问方法、装置及服务器 | |
CN109359977A (zh) | 网络通信方法、装置、计算机设备和存储介质 | |
CN111970109B (zh) | 一种数据传输方法及系统 | |
CN112036834B (zh) | 电子证据的调证方法、装置、计算机设备及存储介质 | |
CN111177735A (zh) | 身份认证方法、装置、系统和设备以及存储介质 | |
CN113364781A (zh) | 请求处理方法及系统 | |
CN112637307B (zh) | 文件更新方法、系统、计算机设备及存储介质 | |
CN114490728A (zh) | 数据查询方法、装置、系统、设备及介质 | |
CN113312576A (zh) | 一种页面跳转方法、系统及装置 | |
EP3171543B1 (en) | Local information acquisition method, apparatus and system | |
CN112822020B (zh) | 网络请求方法、装置、计算机设备及存储介质 | |
CN111177736A (zh) | 一种数据存储和访问的系统、方法和装置 | |
CN110837373A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20231102 Address after: 830000 Units 1306-1308, 13th Floor, Building 2, No. 353 Fenghuangshan Street, Urumqi Economic and Technological Development Zone (Toutunhe District), Xinjiang Uygur Autonomous Region Applicant after: Xinjiang Liansheng Technology Co.,Ltd. Address before: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong Applicant before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |