CN110557502B - 一种小程序的调起方法、装置、电子设备及可读存储介质 - Google Patents

一种小程序的调起方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN110557502B
CN110557502B CN201910732678.1A CN201910732678A CN110557502B CN 110557502 B CN110557502 B CN 110557502B CN 201910732678 A CN201910732678 A CN 201910732678A CN 110557502 B CN110557502 B CN 110557502B
Authority
CN
China
Prior art keywords
data
applet
behavior information
operation behavior
user
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
CN201910732678.1A
Other languages
English (en)
Other versions
CN110557502A (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.)
Wuba Co Ltd
Original Assignee
Wuba Co Ltd
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 Wuba Co Ltd filed Critical Wuba Co Ltd
Priority to CN201910732678.1A priority Critical patent/CN110557502B/zh
Publication of CN110557502A publication Critical patent/CN110557502A/zh
Application granted granted Critical
Publication of CN110557502B publication Critical patent/CN110557502B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种小程序的调起方法、装置、电子设备及可读存储介质,由客户端记录用户调起小程序时产生的操作行为信息,结合APP编号进行加密,将加密数据发送至服务端。服务端对加密数据进行解密,并在APP编号正确的情况下,判断用户调起小程序的操作行为信息和标准操作行为信息是否一致,若一致,通知客户端该小程序可以被调起,并在用户确认进行跳转时,跳转至微信小程序。可见,该方法提出结合白名单数据、用户行为数据和操作流程的多维度、多阶段、全流程的控制方案,可以规范APP跳转小程序入口,只有当前小程序的操作行为信息和标准操作行为信息一致时,才可将小程序调起,避免出现小程序被私自调起的情况,进而实现小程序调起的控制和约束。

Description

一种小程序的调起方法、装置、电子设备及可读存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种小程序的调起方法、装置、电子设备及可读存储介质。
背景技术
微信小程序,简称小程序,是一种不需要下载安装即可使用的应用,实现了应用「触手可及」的梦想,用户扫一扫或搜一下即可打开应用。小程序的使用也体现了「用完即走」的理念,应用将无处不在,随时可用,但又无需安装卸载,用户不用再担心安装太多应用而占用内存的问题。
小程序本身依托在App中(如58App),若要实现通过小程序可以访问APP的目的,在开发阶段,需要App将规定好的功能协议开放给小程序,小程序遵循协议格式,在网页点击或加载等运行场景下,调用固定能力的协议,以在APP的任意位置实现小程序的跳转。
但是,由于小程序可在APP中任意位置被调起,导致小程序在APP不具有集中入口,使得小程序管理混乱,无法对开发阶段业务线的小程序入口进行统一的控制和约束。
发明内容
本发明提供了一种小程序的调起方法、装置、电子设备及可读存储介质,以解决现有的方法无法对小程序的调起行为进行控制的问题。
第一方面,本发明提供了一种小程序的调起方法,应用于客户端,包括以下步骤:
获取APP编号以及用户调起小程序时产生的操作行为信息;
将对所述操作行为信息和APP编号进行加密所得到的加密数据发送至服务端;
接收所述服务端在对所述加密数据进行解密以及判断操作行为信息与标准操作行为信息一致时返回的允许调起指令;
在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
进一步地,在所述APP编号以及获取用户调起小程序时产生的操作行为信息的步骤之前,还包括:
根据本地白名单数据,发送小程序的白名单数据请求至服务端,所述小程序的白名单数据请求中包括本地白名单数据的数据版本号,所述服务端用于根据数据版本号和存储数据版本号进行对比,所述本地白名单数据中包括APP编号;
在所述服务端判断数据版本号与存储数据版本号对比一致的情况下,接收服务端返回的成功信号,根据所述成功信号记录用户调起小程序时产生的操作行为信息。
进一步地,还包括:
在所述服务端判断数据版本号与存储数据版本号对比不一致的情况下,接收服务端下发的新白名单数据,根据所述新白名单数据记录用户调起小程序时产生的操作行为信息,所述操作行为信息包括用户行为数据和操作流程。
进一步地,还包括:
判断所述新白名单数据中的小程序的使用数据是否存在于本地白名单数据中;
如果所述新白名单数据中的小程序的使用数据存在于本地白名单数据中,记录用户调起小程序时产生的用户行为数据和操作流程。
进一步地,所述将对操作行为信息和APP编号进行加密所得到的加密数据发送至服务端,包括:
将所述操作行为信息和APP编号进行加密,得到加密文件和加密秘钥;
对所述加密秘钥进行二次加密,得到二次加密秘钥;
将所述二次加密秘钥和加密文件作为加密数据,发送至服务端。
进一步地,所述将操作行为信息和APP编号进行加密,得到加密文件和加密秘钥,包括:
获取时间戳,所述时间戳是指客户端发送小程序的白名单数据请求时的时间点;
将所述时间戳、操作行为信息和APP编号进行加密,得到加密文件和加密秘钥。
第二方面,本发明实施例提供了一种小程序的调起方法,应用于服务端,包括以下步骤:
接收客户端发送的加密数据,所述加密数据是指客户端对用户调起小程序产生的操作行为信息和APP编号进行加密所得到的数据;
对所述加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
判断所述APP编号是否正确,如果正确,将所述操作行为信息与标准操作行为信息进行对比;
在所述操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,以使所述客户端在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
进一步地,在所述接收客户端发送的加密数据的步骤之前,还包括:
接收客户端发送的小程序的白名单数据请求,所述小程序的白名单数据请求中包括数据版本号;
根据所述小程序的白名单数据请求,将所述数据版本号与所述存储数据版本号进行对比;
如果所述数据版本号与存储数据版本号对比一致,发送成功信号至客户端,以使所述客户端记录用户调起小程序时产生的操作行为信息。
进一步地,还包括:
如果所述数据版本号与存储数据版本号对比不一致,发送新白名单数据至客户端,以使所述客户端根据新白名单数据记录用户调起小程序时产生的操作行为信息,所述操作行为信息包括用户行为数据和操作流程。
进一步地,所述加密数据包括加密文件和二次加密秘钥;所述操作行为信息包括用户行为数据和操作流程;所述对加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息,包括:
根据所述二次加密秘钥对所述加密文件进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
解析所述用户调起小程序时产生的操作行为信息,获得用户调起小程序时产生的用户行为数据;
根据所述用户调起小程序时产生的用户行为数据,得到用户行为的依赖关系;
根据所述用户行为的依赖关系,提取对应的用户调起小程序时产生的操作流程。
进一步地,所述在操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,包括:
所述操作行为信息包括用户行为数据和操作流程,所述标准操作行为信息包括标准用户行为数据和标准流程;
在所述用户行为数据和标准用户行为数据进行对比一致,以及,所述操作流程和标准流程进行对比一致时,发送允许调起指令至客户端。
第三方面,本发明实施例提供的一种小程序的调起装置,应用于客户端,包括:
信息获取模块,用于获取APP编号以及用户调起小程序时产生的操作行为信息;
加密模块,用于将对所述操作行为信息和APP编号进行加密所得到的加密数据发送至服务端;
指令接收模块,用于接收所述服务端在对所述加密数据进行解密以及判断操作行为信息与标准操作行为信息一致时返回的允许调起指令;
小程序跳转模块,用于在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
进一步地,还包括:
请求发送模块,用于根据本地白名单数据,发送小程序的白名单数据请求至服务端,所述小程序的白名单数据请求中包括本地白名单数据的数据版本号,所述服务端用于根据数据版本号和存储数据版本号进行对比,所述本地白名单数据中包括APP编号;
成功信号接收模块,用于在所述服务端判断数据版本号与存储数据版本号对比一致的情况下,接收服务端返回的成功信号,根据所述成功信号记录用户调起小程序时产生的操作行为信息。
进一步地,还包括:
新白名单数据接收模块,用于在所述服务端判断数据版本号与存储数据版本号对比不一致的情况下,接收服务端下发的新白名单数据,根据所述新白名单数据记录用户调起小程序时产生的操作行为信息,所述操作行为信息包括用户行为数据和操作流程。
进一步地,还包括:
判断模块,用于判断所述新白名单数据中的小程序的使用数据是否存在于本地白名单数据中;
记录数据模块,用于在所述新白名单数据中的小程序的使用数据存在于本地白名单数据中时,记录用户调起小程序时产生的用户行为数据和操作流程。
进一步地,所述加密模块,包括:
加密单元,用于将所述操作行为信息和APP编号进行加密,得到加密文件和加密秘钥;
秘钥加密单元,用于对所述加密秘钥进行二次加密,得到二次加密秘钥;
发送单元,用于将所述二次加密秘钥和加密文件作为加密数据,发送至服务端。
进一步地,所述加密单元,包括:
时间戳获取单元,用于获取时间戳,所述时间戳是指客户端发送小程序的白名单数据请求时的时间点;
第二加密单元,用于将所述时间戳、操作行为信息和APP编号进行加密,得到加密文件和加密秘钥。
第四方面,本发明实施例提供的一种小程序的调起装置,应用于服务端,包括:
加密数据接收模块,用于接收客户端发送的加密数据,所述加密数据是指客户端对用户调起小程序产生的操作行为信息和APP编号进行加密所得到的数据;
解密模块,用于对所述加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
信息对比模块,用于判断所述APP编号是否正确,如果正确,将所述操作行为信息与标准操作行为信息进行对比;
指令发送模块,用于在所述操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,以使所述客户端在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
进一步地,还包括:
请求接收模块,用于接收客户端发送的小程序的白名单数据请求,所述小程序的白名单数据请求中包括数据版本号;
对比模块,用于根据所述小程序的白名单数据请求,将所述数据版本号与所述存储数据版本号进行对比;
成功信号发送模块,用于在所述数据版本号与存储数据版本号对比一致时,发送成功信号至客户端,以使所述客户端记录用户调起小程序时产生的操作行为信息。
进一步地,还包括:
新白名单数据发送模块,用于在所述数据版本号与存储数据版本号对比不一致时,发送新白名单数据至客户端,以使所述客户端根据新白名单数据记录用户调起小程序时产生的操作行为信息,所述操作行为信息包括用户行为数据和操作流程。
进一步地,所述加密数据包括加密文件和二次加密秘钥;所述操作行为信息包括用户行为数据和操作流程;所述解密模块,包括:
根据所述二次加密秘钥对所述加密文件进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
解析所述用户调起小程序时产生的操作行为信息,获得用户调起小程序时产生的用户行为数据;
根据所述用户调起小程序时产生的用户行为数据,得到用户行为的依赖关系;
根据所述用户行为的依赖关系,提取对应的用户调起小程序时产生的操作流程。
进一步地,所述操作行为信息包括用户行为数据和操作流程,所述标准操作行为信息包括标准用户行为数据和标准流程;所述指令发送模块,包括:
指令发送单元,用于在所述用户行为数据和标准用户行为数据进行对比一致,以及,所述操作流程和标准流程进行对比一致时,发送允许调起指令至客户端。
第五方面,本发明实施例提供了一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现第一方面所述的小程序的调起方法。
第六方面,本发明实施例提供了一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现第二方面所述的小程序的调起方法。
第七方面,本发明实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,当小程序的调起装置的至少一个处理器执行所述计算机程序时,小程序的调起装置执行第一方面所述的小程序的调起方法。
第八方面,本发明实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,当小程序的调起装置的至少一个处理器执行所述计算机程序时,小程序的调起装置执行第二方面所述的小程序的调起方法。
由以上技术方案可知,本发明实施例提供的一种小程序的调起方法、装置、电子设备及可读存储介质,由客户端记录用户调起小程序时产生的操作行为信息,结合APP编号进行加密,将加密数据发送至服务端。由服务端对加密数据进行解密,并在APP编号正确的情况下,判断用户调起小程序的操作行为信息和标准操作行为信息是否一致,若一致,通知客户端该小程序可以被调起,并在用户确认进行跳转时,跳转至微信小程序。可见,该方法提出结合白名单数据、用户行为数据和操作流程的多维度、多阶段、全流程的控制方案,可以规范APP跳转小程序入口,只有当前小程序的操作行为信息和标准操作行为信息一致时,才可将小程序调起,避免出现小程序被私自调起的情况,进而实现小程序调起的控制和约束。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的小程序的调起方法的数据流图;
图2为本发明实施例提供的用户调起小程序时产生操作行为信息的方法流程图;
图3为本发明实施例提供的小程序的调起方法的流程图;
图4为本发明实施例提供的加密方法的流程图;
图5为本发明实施例提供的另一种加密方法的流程图;
图6为本发明实施例提供的数据版本号对比的方法流程图;
图7为本发明实施例提供的另一种小程序的调起方法的流程图;
图8为本发明实施例提供的对加密数据进行解密的方法流程图;
图9为本发明实施例提供的服务端与客户端的交互结构框图;
图10本发明实施例提供的电子设备的硬件结构示意图;
图11为本发明实施例提供的另一种电子设备的硬件结构示意图。
具体实施方式
为了规范APP跳转小程序的入口,避免小程序在APP中任意位置被调起,导致小程序管理混乱,需要对小程序的调起行为进行控制。本发明实施例提供的小程序的调起方法,建立小程序动态加密机制,将小程序部分数据记录在白名单当中,结合用户行为动态生成唯一加密数据,结合白名单当中的数据进行比对,从而实现App调起小程序的监控和上报。
本实施例提供的方法,在利用白名单进行比对时,白名单数据属于读多写少的场景,用户读取白名单数据的量要远远大于PM(Product Manager,产品经理)操作白名单的量,因此,需要对白名单进行存储。目前面对的存储选择主要有Wlist、Wtable、mysql+redis、mysql+localcache四种,在一一进行分析对比后,选择mysql+redis,原因如下:
一方面,PM需要通过配置后台对存储数据的各个字段进行增删改查的操作,并且不同实体之间存在着多对多、一对多等关系,如果选择nosql的Wlist和Wtable作为存储介质,实现起来比较麻烦,而关系型数据库可以轻松实现,因此选择mysql作为底层数据存储机制;另一方面,基于读多写少的应用场景,需要将每次下发到本地的相关字段存入到缓存当中,如果使用本地缓存,会存在数据不一致的问题,而白名单需要较强的数据一致性,保证每一次下发到本地的数据都是数据库中的最新版本,因此选择redis作为缓存数据存储。
图1为本发明实施例提供的小程序的调起方法的数据流图。
参见图1,本发明实施例提供的一种小程序的调起方法,应用于客户端,在对小程序的调起过程进行控制时,需要对客户端侧用户操作小程序调起的过程与该小程序的标准调起过程进行比对,以确保小程序能够正常调起,为此,需要对用户操作小程序调起的过程进行记录,得到操作行为信息。
具体地,如图2所示的用户调起小程序时产生的操作行为信息的方法流程图,本实施例中,按照下述步骤记录用户调起小程序时产生的操作行为信息:
S011、根据本地白名单数据,发送小程序的白名单数据请求至服务端,小程序的白名单数据请求中包括本地白名单数据的数据版本号,服务端用于根据数据版本号和存储数据版本号进行对比,本地白名单数据中包括APP编号。
为保证客户端侧本地存储的白名单数据为最新版本,需要客户端向服务端请求服务端存储的白名单数据,以进行版本对比。白名单数据中存在的小程序为允许执行跳转操作的小程序,即如果某个小程序是存在于白名单中,才能进行接下来用户的操作行为信息的校验。
客户端向服务端请求白名单数据时,在发送小程序的白名单数据请求中携带本地白名单数据,本地白名单数据为客户端存储的当前版本的白名单,以便于服务端将客户端存储的白名单数据与服务端存储的白名单数据进行对比。
在对比时,本实施例采用对比版本号的方式,因此,小程序的白名单数据请求中需包括本地白名单数据的数据版本号。
S012、在服务端判断数据版本号与存储数据版本号对比一致的情况下,接收服务端返回的成功信号,根据成功信号记录用户调起小程序时产生的操作行为信息。
服务端在接收到客户端发送的小程序的白名单数据请求后,将该请求中携带的本地白名单数据的数据版本号与服务端的存储数据版本号进行对比,存储数据版本号为服务端存储的白名单数据的数据版本号。在数据版本号与存储数据版本号对比一致时,说明客户端存储的白名单数据为最新版本,此时,接收服务端返回的成功信号,以开始记录用户调起小程序时产生的操作行为信息,操作行为信息包括用户行为数据和操作流程。
为了降低流量压力,减少冗余数据的交互,客户端本地会缓存上一次请求获取到的白名单数据和数据版本号,服务端也会维护一个数据版本号(存储数据版本号)。如果服务端的白名单数据发生任何变动,其对应的数据版本号都会增加,客户端每次请求都会将本地维护的数据版本号交给服务端进行对比,如果数据版本号与存储数据版本号对比一致,则服务端不会下发数据,即不会产生新的白名单数据。
但是,如果服务端判断数据版本号与存储数据版本号对比不一致,客户端本地存储的白名单数据的数据版本号要低于服务端存储的白名单数据的数据版本号,因此,需要服务端为客户端提供新的白名单数据,以保证客户端处存储的为最新版本的白名单数据,保证相关小程序能够顺利被调起。
具体地,本发明实施例提供的方法,还包括:
S013、在服务端判断数据版本号与存储数据版本号对比不一致的情况下,接收服务端下发的新白名单数据,根据新白名单数据记录用户调起小程序时产生的操作行为信息,操作行为信息包括用户行为数据和操作流程。
服务端判断数据版本号与存储数据版本号对比不一致后,将服务端存储的新版本的白名单数据下发给客户端,客户端在接收到新版本的白名单数据后,执行记录用户调起小程序时产生的操作行为信息的步骤。新白名单数据是指新版本的白名单数据。
操作行为信息为用户调起某个小程序时产生的用户行为数据和操作流程,用户行为数据是指用户为了调起某个小程序所点击的某个控件的信息或页面信息,操作流程是指用户在调起某个小程序时点击的多个控件和页面的顺序形成的路径。
当用户请求小程序调起时,需要先判断小程序的使用数据是否存在于客户端本地白名单数据中,以保证在客户端侧操作调起小程序时,小程序能够以使用数据为依据被调起。小程序的使用数据是指小程序被调起时所需的相关支持数据。
校验小程序的使用数据的过程发生在客户端处存储最新版本白名单数据的基础上,也就是说,客户端存储本地白名单数据或接收到新版本白名单数据之后,为此,本发明实施例提供的方法,还包括:
S014、判断新白名单数据中的小程序的使用数据是否存在于本地白名单数据中。
S015、如果新白名单数据中的小程序的使用数据存在于本地白名单数据中,记录用户调起小程序时产生的用户行为数据和操作流程。
以客户端接收到服务端下发的新白名单数据为例,由于客户端在接收到新白名单数据之后,随即执行记录用户调起小程序时产生的操作行为信息,即用户行为数据和操作流程的相关步骤,因此,校验小程序的使用数据的过程发生在记录用户调起小程序时产生的操作行为信息的过程之中。小程序的使用数据包括APP编号或URL信息。
如果新白名单数据中的小程序的使用数据存在于本地白名单数据中,说明新白名单数据能够支持小程序的正常调起,此时,继续执行记录用户调起小程序时产生的操作行为信息的步骤;而如果新白名单数据中的小程序的使用数据未存在于本地白名单数据中,说明新白名单数据无法支持小程序的正常调起,出现异常,此时返回错误信息,停止当前小程序的调起过程。
在用户请求调起某个小程序时,客户端执行步骤S011至S015的内容,并记录用户调起小程序时产生的操作行为信息。为了对小程序调起进行控制,避免出现跳转混乱,本发明实施例提供的方法,根据用户调起小程序时产生的操作行为信息执行动态加密策略,以保证数据由客户端发送至服务端的安全性。服务端校验用户调起小程序时产生的操作行为信息是否与该小程序调起的标准操作行为信息一致,只有在一致时,才允许小程序跳转。为此,如图3所示的小程序的调起方法的流程图,本发明实施例提供的小程序的调起方法,包括以下步骤:
S11、获取APP编号以及用户调起小程序时产生的操作行为信息。
APP编号是指服务端对每个APP进行编排的序号,一个APP编号对应一个APP,存储在白名单数据中。用户调起小程序时产生的操作行为信息是指用户请求调起某个小程序时,调起该小程序的用户行为数据和操作流程。
S12、将对操作行为信息和APP编号进行加密所得到的加密数据发送至服务端。
每一次用户在App中调起某个小程序时,App会记录下用户行为数据以及操作流程。客户端在接收到用户调起某个小程序的指令时,对接收到的APP编号以及用户调起小程序时产生的操作行为信息进行加密。本实施例中,采用多维度对称加密策略对APP编号以及用户调起小程序时产生的操作行为信息进行加密,具体的加密方法可选用AES加密算法,还可选用其他加密方法,本实施例不做具体限定。
将加密得到的加密数据发送至服务端,以由服务端根据加密数据进行解密后,校验用户操作行为信息的一致性。
为避免加密数据在传输过程中被破解,本实施例提供的方法,如图4所示的加密方法的流程图,按照下述步骤将对操作行为信息和APP编号进行加密所得到的加密数据发送至服务端:
S121、将操作行为信息和APP编号进行加密,得到加密文件和加密秘钥。
为提高加密数据的安全性,本发明实施例中采用二次加密的方法,在第一次进行加密时,先通过对称加密算法对操作行为信息和APP编号进行加密。在其中一种具体的实施方式中,加密时仅对操作行为信息和APP编号进行加密,而为提高加密数据的防破解功能,在另一种具体的实施方式中,还可对时间戳、操作行为信息和APP编号进行加密。
具体地,如图5所示的另一种加密方法的流程图,本发明实施例提供的方法,还可按照下述方法将操作行为信息和APP编号进行加密,得到加密文件和加密秘钥:
S1211、获取时间戳,时间戳是指客户端发送小程序的白名单数据请求时的时间点。
S1212、将时间戳、操作行为信息和APP编号进行加密,得到加密文件和加密秘钥。
在本实施例中,加密时同时将操作行为信息、APP编号和时间戳进行加密,每增加一个因素即可增加得到的加密文件的安全性。
加密秘钥为对加密文件进行解密的钥匙,传输时,客户端同时将加密文件和加密秘钥发送至服务端。
S122、对加密秘钥进行二次加密,得到二次加密秘钥。
为避免加密文件和加密秘钥被截获,利用解密后的秘钥对加密文件进行解密,本实施例中,将加密秘钥进行二次加密。二次加密方法采用MD5消息摘要算法,提高秘钥的防破解能力。
S123、将二次加密秘钥和加密文件作为加密数据,发送至服务端。
服务端接收到加密数据,由二次加密秘钥对加密文件进行解密,并判断操作行为信息与标准操作行为信息的一致性。
S13、接收服务端在对所述加密数据进行解密以及判断操作行为信息与标准操作行为信息一致时返回的允许调起指令。
服务端在判断操作行为信息与标准操作行为信息一致时,生成允许调起指令发送至客户端,允许调起指令是指小程序可以被随时调起的指令。
如果操作行为信息与标准操作行为信息不一致时,则不允许小程序跳转,并返回错误信息。也就是说,如果行为对比存在差异,则服务端会将相关小程序的数据和用户行为上报给PM,PM确定确实存在小程序私自调起的情况,则立刻将改小程序从白名单移除,并通知小程序PM。
S14、在接收到根据允许调起指令确定的允许跳转指令时,允许小程序跳转。
客户端在接收到根据允许调起指令后,向用户展示弹窗,以询问用户是否允许小程序跳转到微信小程序,如果用户触发允许跳转指令,则允许小程序跳转。如果用户不允许跳转,则跳转至错误页面。
本发明实施例提供的小程序的调起方法,提出结合白名单数据、用户行为数据和操作流程的多维度、多阶段、全流程的控制方案,以对小程序跳转时进行有效的控制,避免出现跳转混乱的情况。
为了更好的说明服务端对操作行为信息与标准操作行为信息进行验证的内容,本发明实施例提供了一种小程序的调起方法,应用于服务端,由服务端对客户端发送的加密数据进行解密,并进行用户行为的对比,以准确控制小程序的调起过程。
服务端在根据客户端发送的加密数据进行解密后校验用户行为的一致性之前,服务端还需对客户端存储的本地白名单数据进行版本校验,只有客户端存储的白名单数据为最新版本时,才会执行小程序调起的后续步骤。
为此,如图6所示的数据版本号对比的方法流程图,本发明实施例提供的方法,在接收客户端发送的加密数据的步骤之前,还包括:
S021、接收客户端发送的小程序的白名单数据请求,小程序的白名单数据请求中包括数据版本号。
用户在请求调起某个小程序时,需要进行白名单数据的验证。即通过客户端发送小程序的白名单数据请求至服务端,在服务端接收到该请求后,需对客户端存储的白名单数据进行校验,以保证客户端的本地白名单数据为最新版本。
S022、根据小程序的白名单数据请求,将数据版本号与存储数据版本号进行对比。
服务端在接收到小程序的白名单数据请求,小程序的白名单数据请求中包括数据版本号,因此,将数据版本号与服务端存储的白名单数据的存储数据版本号进行对比。
S023、如果数据版本号与存储数据版本号对比一致,发送成功信号至客户端,以使客户端记录用户调起小程序时产生的操作行为信息。
在对比时,本实施例采用对比版本号的方式,在服务端判断出数据版本号与存储数据版本号对比一致时,说明客户端存储的白名单数据已经为最新版本,无需下发新版本白名单数据,此时服务端生成成功信号,并发送至客户端,以通知客户端执行后续步骤,即记录用户调起小程序时产生的操作行为信息的步骤。
如果服务端判断数据版本号与存储数据版本号对比不一致,客户端本地存储的白名单数据的数据版本号要低于服务端存储的白名单数据的数据版本号,因此,需要服务端为客户端提供新的白名单数据,以保证客户端处存储的为最新版本的白名单数据,保证相关小程序能够顺利被调起。
具体地,本发明实施例提供的方法,还包括:
S024、如果数据版本号与存储数据版本号对比不一致,发送新白名单数据至客户端,以使所述客户端根据新白名单数据记录用户调起小程序时产生的操作行为信息,所述操作行为信息包括用户行为数据和操作流程。
如果服务端判断数据版本号与存储数据版本号对比不一致,客户端本地存储的白名单数据的数据版本号要低于服务端存储的白名单数据的数据版本号,因此,需要服务端为客户端提供新的白名单数据,以保证客户端处存储的为最新版本的白名单数据,保证相关小程序能够顺利被调起。
服务端主要执行白名单数据的版本对比和用户操作行为信息的对比过程,以保证用户在调起小程序时产生的用户行为数据和操作流程与该小程序的标准数据和操作流程一致,避免小程序被调起时出现混乱。为此,如图7所示的另一种小程序的调起方法的流程图,本发明实施例提供的小程序的调起方法,包括以下步骤:
S21、接收客户端发送的加密数据,加密数据是指客户端对用户调起小程序产生的操作行为信息和APP编号进行加密所得到的数据。
为保证用户调起的小程序为正常调起的情况,而并非私自调起的情况,本实施例提供的方法,需要服务端对用户调起小程序时产生的操作流程和用户行为数据与该小程序正常被调起时的标准操作流程和标准用户行为数据进行验证,只有验证通过时,才可说明该小程序为正常调起情况。
为此,服务端需根据客户端发送的加密数据进行判断,加密数据中包括用户调起小程序产生的操作流程和用户行为数据,以便于服务端进行验证。客户端对操作行为信息和APP编号进行加密得到加密数据的过程,可参照前述实施例中针对客户端执行步骤介绍的内容,此处不再赘述。
S22、对加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息。
为保证数据传输的安全性,需要对相关数据进行加密,而在服务端,为进行验证,需要对接收到的加密数据进行解密。客户端对相关数据进行加密时,得到的加密数据包括加密文件和二次加密秘钥,需要进行验证的用户调起小程序产生的操作行为信息包括用户行为数据和操作流程。
具体地,如图8所示的对加密数据进行解密的方法流程图,本实施例提供的方法,按照下述步骤对加密数据进行解密:
S221、根据二次加密秘钥对加密文件进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息。
解密时,需利用秘钥对加密文件进行解密,本实施例中的秘钥为进行二次加密后得到的二次加密秘钥,可以保证加密数据在传输时不易被破解。
由于加密文件由APP编号以及用户调起小程序时产生的操作行为信息加密而成,因此,解密后,即可得到APP编号以及用户调起小程序时产生的操作行为信息。
S222、解析用户调起小程序时产生的操作行为信息,获得用户调起小程序时产生的用户行为数据。
在获得操作行为信息之后,为得到用户调起小程序时产生的具体操作的用户行为数据,需要对操作行为信息进行解析,在操作行为信息中解析出用户行为数据。
例如,用户调起某个小程序时,用户点击的控件或页面包括点击首页iconA,跳转至另一个页面A,用户在页面A中再次点击iconB跳转至页面B,用户在页面B中点击iconC又退回页面A,在页面B点击iconD调起小程序A。那么解析出的用户行为数据包括:首页、页面A、页面B、iconA、iconB、iconC和iconD。其中,控件包括iconA、iconB、iconC和iconD等。
S223、根据用户调起小程序时产生的用户行为数据,得到用户行为的依赖关系。
用户在调起某个小程序时,每个用户行为数据之间存在依赖关系,即先后点击的相邻两个用户行为数据之间存在关联关系。用户行为的依赖关系用于提取出用户调起小程序所依赖的操作流程。
例如,用户按照上述用户行为数据调起小程序A,那么根据上述点击控件或页面的顺序,即可得到该用户行为的依赖关系为首页-iconA-页面A-iconB-页面B-iconC-页面A-iconD-小程序A。
S224、根据用户行为的依赖关系,提取对应的用户调起小程序时产生的操作流程。
以用户行为的依赖关系为基础,即可在依赖关系中提取出调起小程序时所产生的流程顺序,即操作流程。
提取出的操作流程便于与标准操作流程进行对比,以校验用户的操作行为是否为正常调起小程序的行为。
S23、判断APP编号是否正确,如果正确,将操作行为信息与标准操作行为信息进行对比。
在对用户调起小程序产生的操作行为信息与标准操作行为信息进行对比之前,需先验证客户端中需要调起小程序的APP所对应的编号是否正确。由于每个APP均对应一个APP编号,为便于对小程序调起过程进行控制,可通过判断APP编号是否正确的方式,验证当前调起小程序的是否为目标APP。
在APP编号验证正确时,即可继续执行对比操作行为信息与标准操作行为信息的步骤。操作行为信息为用户调起小程序时产生的,且由客户端发送至服务端。标准操作行为信息存储在服务端,标准操作行为信息为对应小程序的标准调起流程,每个小程序均对应一个标准操作行为信息。只有用户调起小程序的操作行为信息与标准操作行为信息一致时,才可说明小程序被调起的过程为正常操作过程,否则判定为私自调起情况。
S24、在操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,以使客户端在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
服务端判断出操作行为信息与标准操作行为信息对比一致时,说明用户调起小程序的过程为正常操作过程,可允许小程序被正常调起。此时,服务端生成允许调起指令,用于通知客户端该小程序可继续执行被调起的过程。
客户端在接收到根据允许调起指令后,向用户展示弹窗,以询问用户是否允许小程序跳转到微信小程序,如果用户触发允许跳转指令,则允许小程序跳转。
由于操作行为信息包括用户行为数据和操作流程,相应的,标准操作行为信息包括标准用户行为数据和标准流程,因此,在操作行为信息与标准操作行为信息进行对比时,按照下述方法进行:
S241、操作行为信息包括用户行为数据和操作流程,标准操作行为信息包括标准用户行为数据和标准流程;
S242、在用户行为数据和标准用户行为数据进行对比一致,以及,操作流程和标准流程进行对比一致时,发送允许调起指令至客户端。
在将用户的行为与标准行为进行对比时,分别将用户行为数据和标准用户行为数据进行对比,以及,将操作流程和标准流程进行对比。且只有在用户行为数据和标准用户行为数据进行对比一致,以及,操作流程和标准流程进行对比一致时,才可说明用户调起小程序的过程为正常操作过程,可允许小程序被正常调起。在二者均对比一致时,服务端才会生成允许调起指令并发送至客户端。
例如,用户调起小程序的用户行为数据为首页、页面A、页面B、iconA、iconB、iconC和iconD,其提取出的操作流程为首页-iconA-页面A-iconB-页面B-iconC-页面A-iconD-小程序A。
那么,如果服务端存储的标准用户行为数据为首页、页面A、页面B、iconA、iconB、iconC和iconD,其对应的标准操作流程为首页-iconA-页面A-iconB-页面B-iconC-页面A-iconD-小程序A。此时,用户行为数据和标准用户行为数据进行对比一致,以及,操作流程和标准流程进行对比一致,服务端才会生成允许调起指令并发送至客户端,允许小程序被调起。
但如果服务端存储的标准用户行为数据为首页、页面A、iconA和iconD,其对应的标准操作流程为首页-iconA-页面A-iconD-小程序A。此时,用户行为数据和标准用户行为数据进行对比不一致,以及,操作流程和标准流程进行对比不一致,则会阻止小程序跳转,并进行告警。
因此,如果操作行为信息与标准操作行为信息不一致时,则不允许小程序跳转,并返回错误信息。也就是说,如果行为对比存在差异,则服务端会将相关小程序的数据和用户行为上报给PM,PM确定确实存在小程序私自调起的情况,则立刻将改小程序从白名单移除,并通知小程序PM。
本发明实施例提供的一种小程序的调起方法,由客户端记录用户调起小程序时产生的操作行为信息,结合APP编号进行加密,将加密数据发送至服务端。由服务端对加密数据进行解密,并在APP编号正确的情况下,判断用户调起小程序的操作行为信息和标准操作行为信息是否一致,若一致,通知客户端该小程序可以被调起,并在用户确认进行跳转时,跳转至微信小程序。可见,该方法提出结合白名单数据、用户行为数据和操作流程的多维度、多阶段、全流程的控制方案,可以规范APP跳转小程序入口,只有当前小程序的操作行为信息和标准操作行为信息一致时,才可将小程序调起,避免出现小程序被私自调起的情况,进而实现小程序调起的控制和约束。
为保证本发明实施例提供的小程序的调起方法能够对小程序的调起过程进行有效控制,本发明实施例提供的方法还可对该调起方法进行测试,具体的测试方法如下。
业务线产出一款小程序,需要将小程序相关数据告知无线PM,无线PM通过后台添加该小程序的相关数据并创建一条预上线的白名单数据。
无线PM将测试人的APP用户id、工号以及所属业务线录入到后台当中,并开放待测试小程序的测试权限,测试人员进行测试时,服务端会根据测试人员的APP用户id和工号判定其为测试人员,并在后台中查找其所属的业务线,根据业务线确定测试小程序列表,最后根据测试权限下发开放权限的小程序数据进行测试。
当测试通过后,无线PM上线该条白名单数据,测试流程结束,此时该小程序的测试权限清零,如果需要返回测试流程,需要重新向无线申请测试权限。
当某条白名单暂时不需要时,无线PM可下线该条白名单数据。当某条白名单作废时,无线PM可删除该条白名单数据,此时该白名单数据也会随之下线。
如图9所示的服务端与客户端的交互结构框图,本发明实施例提供的一种小程序的调起装置,应用于客户端,用于执行图3所示的小程序的调起方法的相关步骤,该装置包括:信息获取模块110,用于获取APP编号以及用户调起小程序时产生的操作行为信息;加密模块120,用于将对所述操作行为信息和APP编号进行加密所得到的加密数据发送至服务端;指令接收模块130,用于接收所述服务端在对所述加密数据进行解密以及判断操作行为信息与标准操作行为信息一致时返回的允许调起指令;小程序跳转模块140,用于在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
进一步地,还包括:请求发送模块,用于根据本地白名单数据,发送小程序的白名单数据请求至服务端,所述小程序的白名单数据请求中包括本地白名单数据的数据版本号,所述服务端用于根据数据版本号和存储数据版本号进行对比,所述本地白名单数据中包括APP编号;成功信号接收模块,用于在所述服务端判断数据版本号与存储数据版本号对比一致的情况下,接收服务端返回的成功信号,根据所述成功信号记录用户调起小程序时产生的操作行为信息。
进一步地,还包括:新白名单数据接收模块,用于在所述服务端判断数据版本号与存储数据版本号对比不一致的情况下,接收服务端下发的新白名单数据,根据所述新白名单数据记录用户调起小程序时产生的操作行为信息,所述操作行为信息包括用户行为数据和操作流程。
进一步地,还包括:判断模块,用于判断所述新白名单数据中的小程序的使用数据是否存在于本地白名单数据中;记录数据模块,用于在所述新白名单数据中的小程序的使用数据存在于本地白名单数据中时,记录用户调起小程序时产生的用户行为数据和操作流程。
进一步地,所述加密模块120,包括:加密单元,用于将所述操作行为信息和APP编号进行加密,得到加密文件和加密秘钥;秘钥加密单元,用于对所述加密秘钥进行二次加密,得到二次加密秘钥;发送单元,用于将所述二次加密秘钥和加密文件作为加密数据,发送至服务端。
进一步地,所述加密单元,包括:时间戳获取单元,用于获取时间戳,所述时间戳是指客户端发送小程序的白名单数据请求时的时间点;第二加密单元,用于将所述时间戳、操作行为信息和APP编号进行加密,得到加密文件和加密秘钥。
如图9所示的服务端与客户端的交互结构框图,本发明实施例提供的一种小程序的调起装置,应用于服务端,用于执行图7所示的小程序的调起方法的相关步骤,该装置包括:加密数据接收模块210,用于接收客户端发送的加密数据,所述加密数据是指客户端对用户调起小程序产生的操作行为信息和APP编号进行加密所得到的数据;解密模块220,用于对所述加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;信息对比模块230,用于判断所述APP编号是否正确,如果正确,将所述操作行为信息与标准操作行为信息进行对比;指令发送模块240,用于在所述操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,以使所述客户端在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
进一步地,还包括:请求接收模块,用于接收客户端发送的小程序的白名单数据请求,所述小程序的白名单数据请求中包括数据版本号;对比模块,用于根据所述小程序的白名单数据请求,将所述数据版本号与所述存储数据版本号进行对比;成功信号发送模块,用于在所述数据版本号与存储数据版本号对比一致时,发送成功信号至客户端,以使所述客户端记录用户调起小程序时产生的操作行为信息。
进一步地,还包括:新白名单数据发送模块,用于在所述数据版本号与存储数据版本号对比不一致时,发送新白名单数据至客户端,以使所述客户端根据新白名单数据记录用户调起小程序时产生的操作行为信息,所述操作行为信息包括用户行为数据和操作流程。
进一步地,所述加密数据包括加密文件和二次加密秘钥;所述操作行为信息包括用户行为数据和操作流程;所述解密模块220,包括:根据所述二次加密秘钥对所述加密文件进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;解析所述用户调起小程序时产生的操作行为信息,获得用户调起小程序时产生的用户行为数据;根据所述用户调起小程序时产生的用户行为数据,得到用户行为的依赖关系;根据所述用户行为的依赖关系,提取对应的用户调起小程序时产生的操作流程。
进一步地,所述操作行为信息包括用户行为数据和操作流程,所述标准操作行为信息包括标准用户行为数据和标准流程;所述指令发送模块240,包括:指令发送单元,用于在所述用户行为数据和标准用户行为数据进行对比一致,以及,所述操作流程和标准流程进行对比一致时,发送允许调起指令至客户端。
图10为本发明实施例提供的电子设备的硬件结构示意图。如图10所示,本发明实施例提供了一种电子设备,包括:存储器611,用于存储程序指令;处理器612,用于调用并执行所述存储器中的程序指令,以实现前述实施例所述的小程序的调起方法。具体可以参见前述实施例中的相关描述。
本实施例中,处理器612和存储器611可通过总线或其他方式连接。处理器可以是通用处理器,例如中央处理器、数字信号处理器、专用集成电路,或者被配置成实施本发明实施例的一个或多个集成电路。存储器可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘。
图11为本发明实施例提供的电子设备的另一种硬件结构示意图。如图11所示,本发明实施例提供了一种电子设备,包括:存储器621,用于存储程序指令;处理器622,用于调用并执行所述存储器中的程序指令,以实现上述实施例所述的小程序的调起方法。具体可以参见前述实施例中的相关描述。
本实施例中,处理器622和存储器621可通过总线或其他方式连接。处理器可以是通用处理器,例如中央处理器、数字信号处理器、专用集成电路,或者被配置成实施本发明实施例的一个或多个集成电路。存储器可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘。
本发明实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,当小程序的调起装置的至少一个处理器执行所述计算机程序时,小程序的调起装置执行上述实施例所述的小程序的调起方法。
本发明实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,当小程序的调起装置的至少一个处理器执行所述计算机程序时,小程序的调起装置执行上述实施例所述的小程序的调起方法。
所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于小程序的调起装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。

Claims (26)

1.一种小程序的调起方法,应用于客户端,其特征在于,包括以下步骤:
获取APP编号以及用户调起小程序时产生的操作行为信息,所述APP编号是指调起小程序的应用的编号,所述操作行为信息包括用户行为数据和操作流程;
将对所述操作行为信息和APP编号进行加密所得到的加密数据发送至服务端;
接收所述服务端在对所述加密数据进行解密以及判断操作行为信息与标准操作行为信息一致时返回的允许调起指令;
在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
2.根据权利要求1所述的方法,其特征在于,在所述获取APP编号以及用户调起小程序时产生的操作行为信息的步骤之前,还包括:
根据本地白名单数据,发送小程序的白名单数据请求至服务端,所述小程序的白名单数据请求中包括本地白名单数据的数据版本号,所述服务端用于根据数据版本号和存储数据版本号进行对比,所述本地白名单数据中包括APP编号;
在所述服务端判断数据版本号与存储数据版本号对比一致的情况下,接收服务端返回的成功信号,根据所述成功信号记录用户调起小程序时产生的操作行为信息。
3.根据权利要求2所述的方法,其特征在于,还包括:
在所述服务端判断数据版本号与存储数据版本号对比不一致的情况下,接收服务端下发的新白名单数据,根据所述新白名单数据记录用户调起小程序时产生的操作行为信息。
4.根据权利要求3所述的方法,其特征在于,还包括:
判断所述新白名单数据中的小程序的使用数据是否存在于本地白名单数据中;
如果所述新白名单数据中的小程序的使用数据存在于本地白名单数据中,记录用户调起小程序时产生的用户行为数据和操作流程。
5.根据权利要求1所述的方法,其特征在于,所述将对操作行为信息和APP编号进行加密所得到的加密数据发送至服务端,包括:
将所述操作行为信息和APP编号进行加密,得到加密文件和加密秘钥;
对所述加密秘钥进行二次加密,得到二次加密秘钥;
将所述二次加密秘钥和加密文件作为加密数据,发送至服务端。
6.根据权利要求5所述的方法,其特征在于,所述将所述操作行为信息和APP编号进行加密,得到加密文件和加密秘钥,包括:
获取时间戳,所述时间戳是指客户端发送小程序的白名单数据请求时的时间点;
将所述时间戳、操作行为信息和APP编号进行加密,得到加密文件和加密秘钥。
7.一种小程序的调起方法,应用于服务端,其特征在于,包括以下步骤:
接收客户端发送的加密数据,所述加密数据是指客户端对用户调起小程序产生的操作行为信息和APP编号进行加密所得到的数据,所述操作行为信息包括用户行为数据和操作流程,所述APP编号是指调起小程序的应用的编号;
对所述加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
判断所述APP编号是否正确,如果正确,将所述操作行为信息与标准操作行为信息进行对比;
在所述操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,以使所述客户端在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
8.根据权利要求7所述的方法,其特征在于,在所述接收客户端发送的加密数据的步骤之前,还包括:
接收客户端发送的小程序的白名单数据请求,所述小程序的白名单数据请求中包括数据版本号;
根据所述小程序的白名单数据请求,将所述数据版本号与存储数据版本号进行对比;
如果所述数据版本号与存储数据版本号对比一致,发送成功信号至客户端,以使所述客户端记录用户调起小程序时产生的操作行为信息。
9.根据权利要求8所述的方法,其特征在于,还包括:
如果所述数据版本号与存储数据版本号对比不一致,发送新白名单数据至客户端,以使所述客户端根据新白名单数据记录用户调起小程序时产生的操作行为信息。
10.根据权利要求7所述的方法,其特征在于,所述加密数据包括加密文件和二次加密秘钥;所述对所述加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息,包括:
根据所述二次加密秘钥对所述加密文件进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
解析所述用户调起小程序时产生的操作行为信息,获得用户调起小程序时产生的用户行为数据;
根据所述用户调起小程序时产生的用户行为数据,得到用户行为的依赖关系;
根据所述用户行为的依赖关系,提取对应的用户调起小程序时产生的操作流程。
11.根据权利要求7所述的方法,其特征在于,所述在所述操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,包括:
所述标准操作行为信息包括标准用户行为数据和标准流程;
在所述用户行为数据和标准用户行为数据进行对比一致,以及,所述操作流程和标准流程进行对比一致时,发送允许调起指令至客户端。
12.一种小程序的调起装置,应用于客户端,其特征在于,包括:
信息获取模块,用于获取APP编号以及用户调起小程序时产生的操作行为信息,所述APP编号是指调起小程序的应用的编号,所述操作行为信息包括用户行为数据和操作流程;
加密模块,用于将对所述操作行为信息和APP编号进行加密所得到的加密数据发送至服务端;
指令接收模块,用于接收所述服务端在对所述加密数据进行解密以及判断操作行为信息与标准操作行为信息一致时返回的允许调起指令;
小程序跳转模块,用于在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
13.根据权利要求12所述的装置,其特征在于,还包括:
请求发送模块,用于根据本地白名单数据,发送小程序的白名单数据请求至服务端,所述小程序的白名单数据请求中包括本地白名单数据的数据版本号,所述服务端用于根据数据版本号和存储数据版本号进行对比,所述本地白名单数据中包括APP编号;
成功信号接收模块,用于在所述服务端判断数据版本号与存储数据版本号对比一致的情况下,接收服务端返回的成功信号,根据所述成功信号记录用户调起小程序时产生的操作行为信息。
14.根据权利要求13所述的装置,其特征在于,还包括:
新白名单数据接收模块,用于在所述服务端判断数据版本号与存储数据版本号对比不一致的情况下,接收服务端下发的新白名单数据,根据所述新白名单数据记录用户调起小程序时产生的操作行为信息。
15.根据权利要求14所述的装置,其特征在于,还包括:
判断模块,用于判断所述新白名单数据中的小程序的使用数据是否存在于本地白名单数据中;
记录数据模块,用于在所述新白名单数据中的小程序的使用数据存在于本地白名单数据中时,记录用户调起小程序时产生的用户行为数据和操作流程。
16.根据权利要求12所述的装置,其特征在于,所述加密模块,包括:
加密单元,用于将所述操作行为信息和APP编号进行加密,得到加密文件和加密秘钥;
秘钥加密单元,用于对所述加密秘钥进行二次加密,得到二次加密秘钥;
发送单元,用于将所述二次加密秘钥和加密文件作为加密数据,发送至服务端。
17.根据权利要求16所述的装置,其特征在于,所述加密单元,包括:
时间戳获取单元,用于获取时间戳,所述时间戳是指客户端发送小程序的白名单数据请求时的时间点;
第二加密单元,用于将所述时间戳、操作行为信息和APP编号进行加密,得到加密文件和加密秘钥。
18.一种小程序的调起装置,应用于服务端,其特征在于,包括:
加密数据接收模块,用于接收客户端发送的加密数据,所述加密数据是指客户端对用户调起小程序产生的操作行为信息和APP编号进行加密所得到的数据,所述操作行为信息包括用户行为数据和操作流程,所述APP编号是指调起小程序的应用的编号;
解密模块,用于对所述加密数据进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
信息对比模块,用于判断所述APP编号是否正确,如果正确,将所述操作行为信息与标准操作行为信息进行对比;
指令发送模块,用于在所述操作行为信息与标准操作行为信息对比一致时,发送允许调起指令至客户端,以使所述客户端在接收到根据所述允许调起指令确定的允许跳转指令时,允许小程序跳转。
19.根据权利要求18所述的装置,其特征在于,还包括:
请求接收模块,用于接收客户端发送的小程序的白名单数据请求,所述小程序的白名单数据请求中包括数据版本号;
对比模块,用于根据所述小程序的白名单数据请求,将所述数据版本号与存储数据版本号进行对比;
成功信号发送模块,用于在所述数据版本号与存储数据版本号对比一致时,发送成功信号至客户端,以使所述客户端记录用户调起小程序时产生的操作行为信息。
20.根据权利要求19所述的装置,其特征在于,还包括:
新白名单数据发送模块,用于在所述数据版本号与存储数据版本号对比不一致时,发送新白名单数据至客户端,以使所述客户端根据新白名单数据记录用户调起小程序时产生的操作行为信息。
21.根据权利要求18所述的装置,其特征在于,所述加密数据包括加密文件和二次加密秘钥;所述解密模块,包括:
根据所述二次加密秘钥对所述加密文件进行解密,得到客户端的APP编号以及用户调起小程序时产生的操作行为信息;
解析所述用户调起小程序时产生的操作行为信息,获得用户调起小程序时产生的用户行为数据;
根据所述用户调起小程序时产生的用户行为数据,得到用户行为的依赖关系;
根据所述用户行为的依赖关系,提取对应的用户调起小程序时产生的操作流程。
22.根据权利要求18所述的装置,其特征在于,所述操作行为信息包括用户行为数据和操作流程;所述指令发送模块,包括:
指令发送单元,用于在所述用户行为数据和标准用户行为数据进行对比一致,以及,所述操作流程和标准流程进行对比一致时,发送允许调起指令至客户端。
23.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求1~6任一项所述的小程序的调起方法。
24.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求7~11任一项所述的小程序的调起方法。
25.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,当小程序的调起装置的至少一个处理器执行所述计算机程序时,小程序的调起装置执行权利要求1~6任一项所述的小程序的调起方法。
26.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,当小程序的调起装置的至少一个处理器执行所述计算机程序时,小程序的调起装置执行权利要求7~11任一项所述的小程序的调起方法。
CN201910732678.1A 2019-08-09 2019-08-09 一种小程序的调起方法、装置、电子设备及可读存储介质 Active CN110557502B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910732678.1A CN110557502B (zh) 2019-08-09 2019-08-09 一种小程序的调起方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910732678.1A CN110557502B (zh) 2019-08-09 2019-08-09 一种小程序的调起方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN110557502A CN110557502A (zh) 2019-12-10
CN110557502B true CN110557502B (zh) 2021-03-23

Family

ID=68737207

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910732678.1A Active CN110557502B (zh) 2019-08-09 2019-08-09 一种小程序的调起方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110557502B (zh)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103176775B (zh) * 2011-12-22 2016-08-24 腾讯科技(深圳)有限公司 一种实现网页应用程序本地化的方法和装置
US9256461B2 (en) * 2013-09-18 2016-02-09 International Business Machines Corporation Handling interrupt actions for inter-thread communication
CN104883384B (zh) * 2015-03-25 2018-09-07 百度在线网络技术(北京)有限公司 一种为轻应用提供客户端的端能力的方法与装置
CN106888202B (zh) * 2016-12-08 2020-02-21 阿里巴巴集团控股有限公司 授权登录方法及装置
CN108733991B (zh) * 2017-04-19 2021-04-06 腾讯科技(深圳)有限公司 网页应用访问方法及装置、存储介质
CN107168702A (zh) * 2017-05-10 2017-09-15 苏州奇松软件有限公司 一种App、小程序和Web接口定义和代码生成方法
CN107918552B (zh) * 2017-11-02 2021-10-08 阿里巴巴(中国)有限公司 轻应用调用方法、装置、客户端装置及电子设备
CN108712372B (zh) * 2018-04-03 2021-06-25 福建天泉教育科技有限公司 一种客户端接入web第三方登录的方法及系统
CN109032691B (zh) * 2018-06-25 2020-12-15 腾讯科技(深圳)有限公司 一种小程序运行方法、装置及存储介质
CN109284146B (zh) * 2018-08-31 2021-08-31 维沃移动通信有限公司 一种轻应用开启方法及移动终端
CN109522726A (zh) * 2018-10-16 2019-03-26 平安万家医疗投资管理有限责任公司 小程序的鉴权方法、服务器及计算机可读存储介质
CN109491721A (zh) * 2018-11-02 2019-03-19 百度在线网络技术(北京)有限公司 用于加载信息的方法和装置
CN109905376B (zh) * 2019-02-01 2022-03-22 湖南快乐阳光互动娱乐传媒有限公司 一种防止非法访问服务器的方法及系统
CN109840418B (zh) * 2019-02-19 2021-01-01 Oppo广东移动通信有限公司 应用程序的跳转控制方法、装置、存储介质及终端
CN109960540A (zh) * 2019-03-06 2019-07-02 上海连尚网络科技有限公司 小程序触发方法、计算机设备及存储介质
CN109960541B (zh) * 2019-03-15 2022-07-29 上海连尚网络科技有限公司 启动小程序的方法、设备和计算机存储介质

Also Published As

Publication number Publication date
CN110557502A (zh) 2019-12-10

Similar Documents

Publication Publication Date Title
US10158670B1 (en) Automatic privilege determination
US8713527B2 (en) Build process management system
US8051204B2 (en) Information asset management system, log analysis server, log analysis program, and portable medium
CN110826111A (zh) 测试监管方法、装置、设备及存储介质
US9027123B2 (en) Data dependence analyzer, information processor, data dependence analysis method and program
US20020174422A1 (en) Software distribution system
US11811907B2 (en) Data processing permits system with keys
CN107483495B (zh) 一种大数据集群主机管理方法、管理系统及服务端
CN109657492B (zh) 数据库管理方法、介质及电子设备
KR20190077765A (ko) 데이터를 블록체인을 이용하여 저장하는 방법 및 클라우드 시스템
CN109740309B (zh) 一种文件保护方法以及装置
EP1669837A2 (en) Believably trustworthy enforcement of privacy enhancing technologies in data processing
CN111666205B (zh) 一种数据审计的方法、系统、计算机设备和存储介质
US11080175B2 (en) Scalable enterprise platform for automated functional and integration regression testing
CN110602043A (zh) 一种面向移动应用的api网关实现系统及方法
CN111083153A (zh) 医疗接口间的业务访问方法、装置、设备及可读存储介质
CN114172663B (zh) 基于区块链的业务确权方法及装置、存储介质和电子设备
CN110557502B (zh) 一种小程序的调起方法、装置、电子设备及可读存储介质
US20070038572A1 (en) Method, system and computer program for metering software usage
CN114884661B (zh) 混合安全服务密码系统
CN113254983B (zh) 一种数据处理方法及装置
US20190199754A1 (en) System for processing content in scan and remediation processing
CN114428955A (zh) 一种基于操作信息判断异常风险的方法、系统及电子设备
CN114556346A (zh) 事件日志防篡改
US8260712B2 (en) Multimedia-type contents reproduction device and reproduction method, and recording medium having stored thereon data used for the same

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