一种基于微信的选择数据处理方法、装置、介质与流程

文档序号:23718407发布日期:2021-01-24 06:33阅读:112来源:国知局
一种基于微信的选择数据处理方法、装置、介质与流程

[0001]
本发明涉及计算机数据处理领域,特别是一种基于微信的选择数据处理方法、装置及存储介质。


背景技术:

[0002]
随着微信的普及,在微信中进行投票及报名越来越流行,如何保证投票活动的公平性,保证投票实体的唯一性,防止作弊事情的发生,以及可能产生的数据混乱,是目前微信投票活动中的难题之一,因为有的用户重复投票,反复投票,进行刷票等行为。
[0003]
本发明针对投票活动运行在微信中,它会使用微信的openid和自动为此微信内置浏览器生成的一个唯一的指纹信息。由于openid是唯一的,浏览器的指纹信息也是唯一的,以此二者结合来区分当前操作实体的唯一性,确保投票活动的公平性,有效防止作弊行为的发生,以及可能产生的数据混乱。
[0004]
现有技术中采用一些复杂的识别算法确保投票的唯一性,比如神经网络算法,但是基于微信投票的小程序或网页都是寄宿在微信中的,如果投票耗费的计算资源较大的话,严重影响用户终端的性能,可能导致点击微信无反应,影响了用户的体验,因此,如何开发安全、便捷、计算量小的投票方法是一个重要技术问题。


技术实现要素:

[0005]
本发明针对上述现有技术中的缺陷,提出了如下技术方案。
[0006]
一种基于微信的选择数据处理方法,该方法包括:获取步骤,在用户进入微信中的选择界面时,获取用户的微信openid和微信内置浏览器的指纹数据;发送步骤,获取用户在选择界面中的选项,将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器;验证步骤,后台服务器基于处理后的微信openid和微信内置浏览器的指纹数据验证用户是否唯一,如果是,基于用户在选择界面中的选项的进行数据处理。
[0007]
更进一步地,所述发送步骤的操作为:在缓存中获取一空闲缓存区,为所述缓存区设立修改标记,将所述修改标记初始设置为不可修改,判断当前对所述缓存区进行写操作的进程是否为选择界面对应的进程,如果是,则将所述修改标记修改为可修改,然后将用户在选择界面中的选项存储在所述缓存区中,并将所述修改标记修改为不可修改;获取用户的微信openid和对应微信的内置浏览器的指纹数据,构建存储数组,将所述微信openid的字符串按照64bit进行拆分为n个数据段,将对应微信的内置浏览器的指纹数据按照64bit进行拆分为m个数据段,将所述n个数据段依次存储至所述存储数组的第1、3、
……
2n-1的单元中,将所述m个数据段依次存储至所述存储数组的第2、4、
……
2m的单元中,判断当前对所述缓存区进行写操作的进程是否为微信对应的进程,如果是,则将所述修改标记修改为可修改,然后将所述存储数组存储在所述缓存区中,并将所述修改标记修改为不可修改;将所
述缓存区的所有数据进行加密后得到加密数据包发送至后台服务器;其中m≥1,n≥1。
[0008]
更进一步地,所述验证步骤的操作为:所述后台服务器将所述加密数据包进行解密,得到所述存储数组和用户在选择界面中的选项,将所述存储数组的第1、3、
……
2n-1的单元中的数据取出得到所述n个数据段,将所述存储数组的第2、4、
……
2m的单元中数据取出得到所述m个数据段,将所述n个数据段、m个数据段分别进行拼接后得到用户的微信openid和对应微信的内置浏览器的指纹数据,所述后台服务器验证所述用户的微信openid和对应微信的内置浏览器的指纹数据是否属于同一个微信用户,如果是,则验证通过,然后,基于用户在选择界面中的选项的进行数据处理。
[0009]
更进一步地,所述用户在选择界面中的选项是用户在投票界面中的选项或者用户在报名界面中的选项。
[0010]
更进一步地,在获取用户在选择界面中的选项后,就判断当前的投票或报名活动是否已经结束或已经提交或已经达到上限,如果是,则向用户反馈提示消息,如果否,则将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器。
[0011]
本发明还提出了一种基于微信的选择数据处理装置,该装置包括:获取单元,在用户进入微信中的选择界面时,获取用户的微信openid和微信内置浏览器的指纹数据;发送单元,获取用户在选择界面中的选项,将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器;验证单元,后台服务器基于处理后的微信openid和微信内置浏览器的指纹数据验证用户是否唯一,如果是,基于用户在选择界面中的选项的进行数据处理。
[0012]
更进一步地,所述发送单元执行的操作为:在缓存中获取一空闲缓存区,为所述缓存区设立修改标记,将所述修改标记初始设置为不可修改,判断当前对所述缓存区进行写操作的进程是否为选择界面对应的进程,如果是,则将所述修改标记修改为可修改,然后将用户在选择界面中的选项存储在所述缓存区中,并将所述修改标记修改为不可修改;获取用户的微信openid和对应微信的内置浏览器的指纹数据,构建存储数组,将所述微信openid的字符串按照64bit进行拆分为n个数据段,将对应微信的内置浏览器的指纹数据按照64bit进行拆分为m个数据段,将所述n个数据段依次存储至所述存储数组的第1、3、
……
2n-1的单元中,将所述m个数据段依次存储至所述存储数组的第2、4、
……
2m的单元中,判断当前对所述缓存区进行写操作的进程是否为微信对应的进程,如果是,则将所述修改标记修改为可修改,然后将所述存储数组存储在所述缓存区中,并将所述修改标记修改为不可修改;将所述缓存区的所有数据进行加密后得到加密数据包发送至后台服务器;其中m≥1,n≥1;所述验证单元执行的操作为:所述后台服务器将所述加密数据包进行解密,得到所述存储数组和用户在选择界面中的选项,将所述存储数组的第1、3、
……
2n-1的单元中的数据取出得到所述n个数据段,将所述存储数组的第2、4、
……
2m的单元中数据取出得到所述m个数据段,将所述n个数据段、m个数据段分别进行拼接后得到用户的微信openid和对应微信的内置浏览器的指纹数据,所述后台服务器验证所述用户的微信openid和对应微信的内置
浏览器的指纹数据是否属于同一个微信用户,如果是,则验证通过,然后,基于用户在选择界面中的选项的进行数据处理。
[0013]
更进一步地,所述用户在选择界面中的选项是用户在投票界面中的选项或者用户在报名界面中的选项。
[0014]
更进一步地,在获取用户在选择界面中的选项后,就判断当前的投票或报名活动是否已经结束或已经提交或已经达到上限,如果是,则向用户反馈提示消息,如果否,则将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器。
[0015]
本发明还提出了一种计算机可读存储介质,所述存储介质上存储有计算机程序代码,当所述计算机程序代码被计算机执行时执行上述之任一的方法。
[0016]
本发明的一种基于微信的选择数据处理方法、装置及存储介质,该方法包括:获取步骤,在用户进入微信中的选择界面时,获取用户的微信openid和微信内置浏览器的指纹数据;发送步骤,获取用户在选择界面中的选项,将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器;验证步骤,后台服务器基于处理后的微信openid和微信内置浏览器的指纹数据验证用户是否唯一,如果是,基于用户在选择界面中的选项的进行数据处理。本发明中,会将选项及openid和指纹信息一起处理后通过接口一并传递给后台服务器,这样便保证了提交数据的唯一性,有效解决达人榜投票活动的公平性,保证操作实体的唯一性,防止作弊事情的发生,以及可能产生的数据混乱,本发明中,验证操作时发送操作的逆过程,根据设定的方式,将

麻花

数组进行解码获得相应的微信openid和指纹数据,基于二者完成用户唯一性的识别,且数据准确,不会产生混乱的情况,计算量小,不会影响终端的性能,也不会导致微信宕掉,提高了用户体验,本发明中,为了防止数据混乱,在缓存中开辟了专用的存储区,用于保存投票的选项及用户的微信openid和对应微信的内置浏览器的指纹数据,并在存储区设定了修改标识,只有验证是对应的操作进程对其进行操作时,才可以将相应的数据写入,从而防止了数据混乱,且将openid和指纹数据分割开来,以

麻花

的方式写入到一个数组中,防止仅仅将其解密不安全的问题,进一步地提高了安全性,本发明通过在获取用户在选择界面中的选项后,就先在客户端判断当前的投票或报名活动是否已经结束或已经提交或已经达到上限,即将不符合投票的用户拦截在前端,避免了与后台服务器的交互,减轻了网络及服务器的压力,提高了系统性能。
附图说明
[0017]
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显。
[0018]
图1是根据本发明的实施例的一种基于微信的选择数据处理方法的流程图。
[0019]
图2是根据本发明的实施例的一种基于微信的选择数据处理装置的示意图。
具体实施方式
[0020]
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了
便于描述,附图中仅示出了与有关发明相关的部分。
[0021]
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0022]
图1示出了本发明的一种基于微信的选择数据处理方法,该方法包括:获取步骤s101,在用户进入微信中的选择界面时,获取用户的微信openid和微信内置浏览器的指纹数据;比如,用户通过微信用进入达人榜投票活动页面时,会自动获取微信的openid,以及所运行的微信内置浏览器的唯一指纹信息。
[0023]
发送步骤s102,获取用户在选择界面中的选项,将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器;所述选项是用户在投票界面中选择的要投的项或在报名课程活动中选择的要报的课程。用户在基于微信进行投票或报名课程时,会将openid和指纹信息一起处理后通过接口一并传递给后台服务器,这样便保证了提交数据的唯一性,有效解决达人榜投票活动的公平性,保证操作实体的唯一性,防止作弊事情的发生,以及可能产生的数据混乱。本发明中,所述用户在选择界面中的选项是用户在投票界面中的选项或者用户在报名界面中的选项。
[0024]
验证步骤s103,后台服务器基于处理后的微信openid和微信内置浏览器的指纹数据验证用户是否唯一,如果是,基于用户在选择界面中的选项的进行数据处理。
[0025]
本发明中,会将选项及openid和指纹信息一起处理后通过接口一并传递给后台服务器,这样便保证了提交数据的唯一性,有效解决达人榜投票活动的公平性,保证操作实体的唯一性,防止作弊事情的发生,以及可能产生的数据混乱,这是本发明的重要发明点之一。
[0026]
在一个实施例中,所述发送步骤s102的操作为:在缓存中获取一空闲缓存区,为所述缓存区设立修改标记,将所述修改标记初始设置为不可修改,判断当前对所述存储区进行写操作的进程是否为选择界面对应的进程,如果是,则将所述修改标记修改为可修改,然后将用户在选择界面中的选项存储在所述缓存区中,并将所述修改标记修改为不可修改;获取用户的微信openid和对应微信的内置浏览器的指纹数据,构建存储数组,将所述微信openid的字符串按照64bit进行拆分为n个数据段,将对应微信的内置浏览器的指纹数据按照64bit进行拆分为m个数据段,将所述n个数据段依次存储至所述存储数组的第1、3、
……
2n-1的单元中,将所述m个数据段依次存储至所述存储数组的第2、4、
……
2m的单元中,判断当前对所述存储区进行写操作的进程是否为微信对应的进程,如果是,则将所述修改标记修改为可修改,然后将所述存储数组存储在所述缓存区中,并将所述修改标记修改为不可修改;将所述缓存区的所有数据进行加密后得到加密数据包发送至后台服务器;其中m≥1,n≥1,所述存储数组的长度为max(2m,2n)。
[0027]
本发明中,为了防止数据混乱,在缓存中开辟了专用的存储区,用于保存投票的选项及用户的微信openid和对应微信的内置浏览器的指纹数据,并在存储区设定了修改标识,只有验证是对应的操作进程对其进行操作时,才可以将相应的数据写入,从而防止了数据混乱,且将openid和指纹数据分割开来,以

麻花

的方式写入到一个数组中,防止仅仅将其解密不安全的问题,进一步地提高了安全了,这是本发明的另一个重要发明点。
[0028]
在一个实施例中,所述验证步骤s103的操作为:所述后台服务器将所述加密数据包进行解密,得到所述存储数组和用户在选择界面中的选项,将所述存储数组的第1、
3、
……
2n-1的单元中的数据取出得到所述n个数据段,将所述存储数组的第2、4、
……
2m的单元中数据取出得到所述m个数据段,将所述n个数据段、m个数据段分别进行拼接后得到用户的微信openid和对应微信的内置浏览器的指纹数据,所述后台服务器验证所述用户的微信openid和对应微信的内置浏览器的指纹数据是否属于同一个微信用户,如果是,则验证通过,然后,基于用户在选择界面中的选项的进行数据处理。
[0029]
本发明中,验证操作时发送操作的逆过程,根据设定的方式,将

麻花

数组进行解码获得相应的微信openid和指纹数据,基于二者完成用户唯一性的识别,且数据准确,不会产生混乱的情况,计算量小,不会影响终端的性能,也不会导致微信宕掉,提高了用户体验,这是本发明的另一个重要发明点。
[0030]
在一个实施例,在获取用户在选择界面中的选项后,就判断当前的投票或报名活动是否已经结束或已经提交或已经达到上限,如果是,则向用户反馈提示消息,如果否,则将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器。
[0031]
通过在获取用户在选择界面中的选项后,就先在客户端判断当前的投票或报名活动是否已经结束或已经提交或已经达到上限,即将不符合投票的用户拦截在前端,避免了与后台服务器的交互,减轻了网络及服务器的压力,提高了系统性能,这是本发明的重要发明点之另一。
[0032]
本发明中,后台服务器基于用户在选择界面中的选项的进行数据处理是指,如果是投票活动,则给该用户的选项代表的候选项加上相应的票数,一般为1票,如果是选课活动,基于用户的选项报名相应的课程,并将该课程的可报量减1,并向用户反馈投票或选课结果。
[0033]
图2示出了本发明的一种基于微信的选择数据处理装置,该装置包括:获取单元201,在用户进入微信中的选择界面时,获取用户的微信openid和微信内置浏览器的指纹数据;比如,用户通过微信用进入达人榜投票活动页面时,会自动获取微信的openid,以及所运行的微信内置浏览器的唯一指纹信息。
[0034]
发送单元202,获取用户在选择界面中的选项,将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器;所述选项是用户在投票界面中选择的要投的项或在报名课程活动中选择的要报的课程。用户在基于微信进行投票或报名课程时,会将openid和指纹信息一起处理后通过接口一并传递给后台服务器,这样便保证了提交数据的唯一性,有效解决达人榜投票活动的公平性,保证操作实体的唯一性,防止作弊事情的发生,以及可能产生的数据混乱。本发明中,所述用户在选择界面中的选项是用户在投票界面中的选项或者用户在报名界面中的选项。
[0035]
验证单元203,后台服务器基于处理后的微信openid和微信内置浏览器的指纹数据验证用户是否唯一,如果是,基于用户在选择界面中的选项的进行数据处理。
[0036]
本发明中,会将选项及openid和指纹信息一起处理后通过接口一并传递给后台服务器,这样便保证了提交数据的唯一性,有效解决达人榜投票活动的公平性,保证操作实体的唯一性,防止作弊事情的发生,以及可能产生的数据混乱,这是本发明的重要发明点之一。
[0037]
在一个实施例中,所述发送单元202执行的操作为:在缓存中获取一空闲缓存区,
为所述缓存区设立修改标记,将所述修改标记初始设置为不可修改,判断当前对所述存储区进行写操作的进程是否为选择界面对应的进程,如果是,则将所述修改标记修改为可修改,然后将用户在选择界面中的选项存储在所述缓存区中,并将所述修改标记修改为不可修改;获取用户的微信openid和对应微信的内置浏览器的指纹数据,构建存储数组,将所述微信openid的字符串按照64bit进行拆分为n个数据段,将对应微信的内置浏览器的指纹数据按照64bit进行拆分为m个数据段,将所述n个数据段依次存储至所述存储数组的第1、3、
……
2n-1的单元中,将所述m个数据段依次存储至所述存储数组的第2、4、
……
2m的单元中,判断当前对所述存储区进行写操作的进程是否为微信对应的进程,如果是,则将所述修改标记修改为可修改,然后将所述存储数组存储在所述缓存区中,并将所述修改标记修改为不可修改;将所述缓存区的所有数据进行加密后得到加密数据包发送至后台服务器;其中m≥1,n≥1,所述存储数组的长度为max(2m,2n)。
[0038]
本发明中,为了防止数据混乱,在缓存中开辟了专用的存储区,用于保存投票的选项及用户的微信openid和对应微信的内置浏览器的指纹数据,并在存储区设定了修改标识,只有验证是对应的操作进程对其进行操作时,才可以将相应的数据写入,从而防止了数据混乱,且将openid和指纹数据分割开来,以

麻花

的方式写入到一个数组中,防止仅仅将其解密不安全的问题,进一步地提高了安全了,这是本发明的另一个重要发明点。
[0039]
在一个实施例中,所述验证单元203执行的操作为:所述后台服务器将所述加密数据包进行解密,得到所述存储数组和用户在选择界面中的选项,将所述存储数组的第1、3、
……
2n-1的单元中的数据取出得到所述n个数据段,将所述存储数组的第2、4、
……
2m的单元中数据取出得到所述m个数据段,将所述n个数据段、m个数据段分别进行拼接后得到用户的微信openid和对应微信的内置浏览器的指纹数据,所述后台服务器验证所述用户的微信openid和对应微信的内置浏览器的指纹数据是否属于同一个微信用户,如果是,则验证通过,然后,基于用户在选择界面中的选项的进行数据处理。
[0040]
本发明中,验证操作时发送操作的逆过程,根据设定的方式,将

麻花

数组进行解码获得相应的微信openid和指纹数据,基于二者完成用户唯一性的识别,且数据准确,不会产生混乱的情况,计算量小,不会影响终端的性能,也不会导致微信宕掉,提高了用户体验,这是本发明的另一个重要发明点。
[0041]
在一个实施例,在获取用户在选择界面中的选项后,就判断当前的投票或报名活动是否已经结束或已经提交或已经达到上限,如果是,则向用户反馈提示消息,如果否,则将所述选项及对用户的微信openid和对应微信的内置浏览器的指纹数据进行处理后发送至后台服务器。
[0042]
通过在获取用户在选择界面中的选项后,就先在客户端判断当前的投票或报名活动是否已经结束或已经提交或已经达到上限,即将不符合投票的用户拦截在前端,避免了与后台服务器的交互,减轻了网络及服务器的压力,提高了系统性能,这是本发明的重要发明点之另一。
[0043]
本发明中,后台服务器基于用户在选择界面中的选项的进行数据处理是指,如果是投票活动,则给该用户的选项代表的候选项加上相应的票数,一般为1票,如果是选课活动,基于用户的选项报名相应的课程,并将该课程的可报量减1,并向用户反馈投票或选课结果。
[0044]
本发明还提出了一种计算机可读存储介质,所述存储介质上存储有计算机程序代码,当所述计算机程序代码被计算机执行时执行上述之任一的方法。
[0045]
为了描述的方便,描述以上系统时以功能分为各种单元分别描述。当然, 在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0046]
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质 中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
[0047]
最后所应说明的是:以上实施例仅以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1