CN107832040A - 脚本获取终端类型确定支付方式的方法、装置及存储介质 - Google Patents
脚本获取终端类型确定支付方式的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN107832040A CN107832040A CN201710960195.8A CN201710960195A CN107832040A CN 107832040 A CN107832040 A CN 107832040A CN 201710960195 A CN201710960195 A CN 201710960195A CN 107832040 A CN107832040 A CN 107832040A
- Authority
- CN
- China
- Prior art keywords
- payment
- script
- terminal
- javascript
- wrappers
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000009434 installation Methods 0.000 claims abstract description 17
- 235000014510 cooky Nutrition 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了脚本获取终端类型确定支付方式的方法、装置及存储介质,方法包括:加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;通过脚本获取终端的navigator对象中所包括的浏览器信息;根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;若终端已安装相应的支付软件,则直接调用支付软件;若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。本发明实现了用户使用任意的终端或支付方式,均能快速的实现支付模块的加载并进行支付。
Description
技术领域
本发明涉及网页开发技术领域,尤其涉及的是脚本获取终端类型确定支付方式的方法、装置及存储介质。
背景技术
当今,信息时代已经风靡全球,智能终端用户日常的支付方式也逐渐的换成了在线数字交易。随着市场上出现了很多第三方支付系统,知名的有支付宝,微信支付,京东钱包等等。对与使用这些第三方支付系统的商家而言,商家开发网页商城支付模块,最复杂和耗时的事情便是要编写额外的代码,来判断终端的类型,还要判断客户使用了哪些支付商家(支付宝,微信支付...),这就导致了网页商城的支付模块开发成本较高,且效率低下。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供脚本获取终端类型确定支付方式的方法、装置及存储介质,旨在解决现有技术中网页商城的支付模块开发成本较高,且效率低下的缺陷。
本发明的技术方案如下:
一种脚本获取终端类型确定支付方式的方法,其中,所述方法包括以下步骤:
加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;
通过脚本获取终端的navigator对象中所包括的浏览器信息;
根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;
若终端已安装相应的支付软件,则直接调用支付软件;
若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。
所述脚本获取终端类型确定支付方式的方法,其中,所述脚本通过md5进行加密后封装成JavaScript封装包。
所述脚本获取终端类型确定支付方式的方法,其中,所述浏览器信息至少包括浏览器类型、浏览器属性信息、浏览器的正式名称、浏览器的版本号、浏览器是否启用了cookie、CPU等级、浏览器的MIME类型、系统平台、安装的插件、插件的数量、插件的名称、用户设置的操作系统语言、操作系统支持的默认语言、Director、javaEnabled、是否有quicktime、flash插件情况、是否有MediaPlayer、是否有realPlayer、屏幕分辨率高度、屏幕分辨率宽度、颜色质量、像素、及字体是否平滑。
所述脚本获取终端类型确定支付方式的方法,其中,所述支付软件为支付宝、微信支付或京东钱包。
所述脚本获取终端类型确定支付方式的方法,其中,所述加载JavaScript封装包,获取JavaScript封装包中所包括的脚本的步骤中通过NPM方式加载JavaScript封装包,或是通过Github平台加载JavaScript封装包。
一种脚本获取终端类型确定支付方式的装置,其中,所述脚本获取终端类型确定支付方式的装置包括处理器,适于实现各指令;存储器,适于存储多条指令;所述存储器和处理器之间由通信总线连接;所述处理器用于执行存储器中存储的脚本获取终端类型确定支付方式的程序,以实现以下步骤:
加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;
通过脚本获取终端的navigator对象中所包括的浏览器信息;
根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;
若终端已安装相应的支付软件,则直接调用支付软件;
若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。
所述脚本获取终端类型确定支付方式的装置,其中,所述脚本通过md5进行加密后封装成JavaScript封装包。
所述脚本获取终端类型确定支付方式的装置,其中,所述浏览器信息至少包括浏览器类型、浏览器属性信息、浏览器的正式名称、浏览器的版本号、浏览器是否启用了cookie、CPU等级、浏览器的MIME类型、系统平台、安装的插件、插件的数量、插件的名称、用户设置的操作系统语言、操作系统支持的默认语言、Director、javaEnabled、是否有quicktime、flash插件情况、是否有MediaPlayer、是否有realPlayer、屏幕分辨率高度、屏幕分辨率宽度、颜色质量、像素、及字体是否平滑。
所述脚本获取终端类型确定支付方式的装置,其中,所述加载JavaScript封装包,获取JavaScript封装包中所包括的脚本的步骤中通过NPM方式加载JavaScript封装包,或是通过Github平台加载JavaScript封装包。
一种存储介质,其中,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现所述的脚本获取终端类型确定支付方式的方法的步骤。
本发明所提供的脚本获取终端类型确定支付方式的方法、装置及存储介质,方法包括:加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;通过脚本获取终端的navigator对象中所包括的浏览器信息;根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;若终端已安装相应的支付软件,则直接调用支付软件;若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。本发明实现了用户使用任意的终端或支付方式,均能快速的实现支付模块的加载并进行支付。
附图说明
图1为本发明所述基于node的分布式缓存方法的流程图。
具体实施方式
本发明提供脚本获取终端类型确定支付方式的方法、装置及存储介质,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参考图1,其为本发明所述脚本获取终端类型确定支付方式的方法的流程图。如图1所示,所述脚本获取终端类型确定支付方式的方法包括以下步骤:
步骤S100、加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;
步骤S200、通过脚本获取终端的navigator对象中所包括的浏览器信息;
步骤S300、根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;
步骤S400、若终端已安装相应的支付软件,则直接调用支付软件;
步骤S500、若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。
本实施例中,通过编写一获取navigator对象(navigator对象包含的属性描述了正在使用的浏览器。可以使用这些属性进行平台专用的配置)的脚本来获取当前浏览器的一切信息。Window有navigator对象让使用者得知浏览器的全部信息,故可以利用一系列的API函数得知浏览器的信息,当前主流的浏览器都是采用的Trident,Blink,Gecko,Webkit这几种的浏览器内核,解析上的原理基本相同。
当获取了浏览器信息的时候也就可以判断客户的终端信息,如浏览器信息中包括的系统平台(如Win32、Win64,Android5.0等),就能做一些扩展判断。
例如用电脑打开网页系统的时候,会根据商家的配置项得知要显示微信或者支付宝的二维码进行支付,还是直接在电脑上调用支付宝或者微信的在线支付功能,同理如果用户是通过手机或者其他移动终端打开,JavaScript封装包会通过商家给的配置信息自动判断是否安装了相应的支付应用软件,如果安装直接调用本地的支付应用进行支付,如若没有则会提示客户安装,或者跳转到支付系统的在线支付页面上。JavaScript封装包对调用者只是暴漏一种统一的调用支付方式,这些都是有javascript代码来实现。
具体的,所述脚本通过md5进行加密后封装成JavaScript封装包。当javascript代码编辑完毕之后会采用md5方式对其进行加密,压缩js文件来减少js的请求字节过大,最终打包成JavaScript封装包发布出去,供其他提供商使用其作为统一支付订单接口。每个应用都有自己相应的协议,如支付宝、微信等等。在JavaScript封装包也会把第三方的支付所需的SDK集成进来,进而打开用户终端的应用。
具体的,在所述脚本获取终端类型确定支付方式的方法中,所述浏览器信息至少包括浏览器类型、浏览器属性信息、浏览器的正式名称、浏览器的版本号、浏览器是否启用了cookie、CPU等级、浏览器的MIME类型、系统平台、安装的插件、插件的数量、插件的名称、用户设置的操作系统语言、操作系统支持的默认语言、Director、javaEnabled、是否有quicktime、flash插件情况、是否有MediaPlayer、是否有realPlayer、屏幕分辨率高度、屏幕分辨率宽度、颜色质量、像素、及字体是否平滑。
例如,浏览器类型为空,浏览器属性信息为Mozailla/5.0(Windows NT 6.1;WOW64)AppleWebkit、537.36(KHTML,like Gecko)Chrome/57.0.2987.98,浏览器的正式名称为Netscape,系统平台为Win32。上述浏览器信息所包括的系统平台决定了采取何种支付方式。
具体的,在所述脚本获取终端类型确定支付方式的方法中,所述加载JavaScript封装包,获取JavaScript封装包中所包括的脚本的步骤中通过NPM方式加载JavaScript封装包,或是通过Github平台加载JavaScript封装包。NPM是nodejs官方未nodejs定制的一个工具,是Node.js的包管理器,是Node Packaged Modules的简称,通过npm可以下载安装nodejs的模块包,nodejs有很多优秀的模块包可以让开发者快速开发。GitHub是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。开发者可以在Github上创建自己的开源项目并与其他开发者协作编码。创业公司可以用它来托管软件项目,开源项目可以免费托管,私有项目需付费。
基于上述脚本获取终端类型确定支付方式的方法,本发明还提供了一种脚本获取终端类型确定支付方式的装置。所述脚本获取终端类型确定支付方式的装置包括处理器,适于实现各指令;存储器,适于存储多条指令;所述存储器和处理器之间由通信总线连接;所述处理器用于执行存储器中存储的脚本获取终端类型确定支付方式的程序,以实现以下步骤:
加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;
通过脚本获取终端的navigator对象中所包括的浏览器信息;
根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;
若终端已安装相应的支付软件,则直接调用支付软件;
若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。
优选的,在所述脚本获取终端类型确定支付方式的装置中,所述脚本通过md5进行加密后封装成JavaScript封装包。
优选的,在所述脚本获取终端类型确定支付方式的装置中,所述浏览器信息至少包括浏览器类型、浏览器属性信息、浏览器的正式名称、浏览器的版本号、浏览器是否启用了cookie、CPU等级、浏览器的MIME类型、系统平台、安装的插件、插件的数量、插件的名称、用户设置的操作系统语言、操作系统支持的默认语言、Director、javaEnabled、是否有quicktime、flash插件情况、是否有MediaPlayer、是否有realPlayer、屏幕分辨率高度、屏幕分辨率宽度、颜色质量、像素、及字体是否平滑。
优选的,在所述脚本获取终端类型确定支付方式的装置中,所述加载JavaScript封装包,获取JavaScript封装包中所包括的脚本的步骤中通过NPM方式加载JavaScript封装包,或是通过Github平台加载JavaScript封装包。
基于上述脚本获取终端类型确定支付方式的方法,本发明还提供了一种存储介质(即计算机可读存储介质)。所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现所述的脚本获取终端类型确定支付方式的方法的步骤。
综上所述,本发明所提供的脚本获取终端类型确定支付方式的方法、装置及存储介质,方法包括:加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;通过脚本获取终端的navigator对象中所包括的浏览器信息;根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;若终端已安装相应的支付软件,则直接调用支付软件;若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。本发明实现了用户使用任意的终端或支付方式,均能快速的实现支付模块的加载并进行支付。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种脚本获取终端类型确定支付方式的方法,其特征在于,所述方法包括以下步骤:
加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;
通过脚本获取终端的navigator对象中所包括的浏览器信息;
根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;
若终端已安装相应的支付软件,则直接调用支付软件;
若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。
2.根据权利要求1所述脚本获取终端类型确定支付方式的方法,其特征在于,所述脚本通过md5进行加密后封装成JavaScript封装包。
3.根据权利要求1所述脚本获取终端类型确定支付方式的方法,其特征在于,所述浏览器信息至少包括浏览器类型、浏览器属性信息、浏览器的正式名称、浏览器的版本号、浏览器是否启用了cookie、CPU等级、浏览器的MIME类型、系统平台、安装的插件、插件的数量、插件的名称、用户设置的操作系统语言、操作系统支持的默认语言、Director、javaEnabled、是否有quicktime、flash插件情况、是否有MediaPlayer、是否有realPlayer、屏幕分辨率高度、屏幕分辨率宽度、颜色质量、像素、及字体是否平滑。
4.根据权利要求1所述脚本获取终端类型确定支付方式的方法,其特征在于,所述支付软件为支付宝、微信支付或京东钱包。
5.根据权利要求1所述脚本获取终端类型确定支付方式的方法,其特征在于,所述加载JavaScript封装包,获取JavaScript封装包中所包括的脚本的步骤中通过NPM方式加载JavaScript封装包,或是通过Github平台加载JavaScript封装包。
6.一种脚本获取终端类型确定支付方式的装置,其特征在于,所述脚本获取终端类型确定支付方式的装置包括处理器,适于实现各指令;存储器,适于存储多条指令;所述存储器和处理器之间由通信总线连接;所述处理器用于执行存储器中存储的脚本获取终端类型确定支付方式的程序,以实现以下步骤:
加载JavaScript封装包,获取JavaScript封装包中所包括的脚本;
通过脚本获取终端的navigator对象中所包括的浏览器信息;
根据浏览器信息中所包括的配置项,判断终端是否安装了相应的支付软件;
若终端已安装相应的支付软件,则直接调用支付软件;
若终端未安装相应的支付软件,则发出提示用户安装支付软件的通知信息。
7.根据权利要求6所述脚本获取终端类型确定支付方式的装置,其特征在于,所述脚本通过md5进行加密后封装成JavaScript封装包。
8.根据权利要求6所述脚本获取终端类型确定支付方式的装置,其特征在于,所述浏览器信息至少包括浏览器类型、浏览器属性信息、浏览器的正式名称、浏览器的版本号、浏览器是否启用了cookie、CPU等级、浏览器的MIME类型、系统平台、安装的插件、插件的数量、插件的名称、用户设置的操作系统语言、操作系统支持的默认语言、Director、javaEnabled、是否有quicktime、flash插件情况、是否有MediaPlayer、是否有realPlayer、屏幕分辨率高度、屏幕分辨率宽度、颜色质量、像素、及字体是否平滑。
9.根据权利要求6所述脚本获取终端类型确定支付方式的装置,其特征在于,所述加载JavaScript封装包,获取JavaScript封装包中所包括的脚本的步骤中通过NPM方式加载JavaScript封装包,或是通过Github平台加载JavaScript封装包。
10.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1-5任一项所述的脚本获取终端类型确定支付方式的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710960195.8A CN107832040B (zh) | 2017-10-16 | 2017-10-16 | 脚本获取终端类型确定支付方式的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710960195.8A CN107832040B (zh) | 2017-10-16 | 2017-10-16 | 脚本获取终端类型确定支付方式的方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107832040A true CN107832040A (zh) | 2018-03-23 |
CN107832040B CN107832040B (zh) | 2021-03-05 |
Family
ID=61647993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710960195.8A Active CN107832040B (zh) | 2017-10-16 | 2017-10-16 | 脚本获取终端类型确定支付方式的方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107832040B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110264184A (zh) * | 2019-06-28 | 2019-09-20 | Oppo(重庆)智能科技有限公司 | 支付控制方法及相关产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164791A (zh) * | 2011-12-13 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 一种通过电子终端实现安全支付的方法和装置 |
CN103400268A (zh) * | 2013-07-24 | 2013-11-20 | 北京奇虎科技有限公司 | 一种实现浏览器安全支付的装置和方法 |
CN103491086A (zh) * | 2013-09-17 | 2014-01-01 | 杭州信雅达科技有限公司 | 一种移动终端的安全支付方法与装置 |
-
2017
- 2017-10-16 CN CN201710960195.8A patent/CN107832040B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164791A (zh) * | 2011-12-13 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 一种通过电子终端实现安全支付的方法和装置 |
CN103400268A (zh) * | 2013-07-24 | 2013-11-20 | 北京奇虎科技有限公司 | 一种实现浏览器安全支付的装置和方法 |
CN103491086A (zh) * | 2013-09-17 | 2014-01-01 | 杭州信雅达科技有限公司 | 一种移动终端的安全支付方法与装置 |
Non-Patent Citations (1)
Title |
---|
昊爷: ""JS 通过 navigator获取判断浏览器信息"", 《HTTPS://WWW.CNBLOGS.COM/KGDJGD/P/6524154.HTML》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110264184A (zh) * | 2019-06-28 | 2019-09-20 | Oppo(重庆)智能科技有限公司 | 支付控制方法及相关产品 |
CN110264184B (zh) * | 2019-06-28 | 2021-07-23 | Oppo(重庆)智能科技有限公司 | 支付控制方法及相关产品 |
Also Published As
Publication number | Publication date |
---|---|
CN107832040B (zh) | 2021-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110502222B (zh) | 外发依赖内部基础库的aar方法、装置、介质和设备 | |
US9185538B2 (en) | Wireless subscriber application and content distribution and differentiated pricing | |
US9311457B1 (en) | Platform for cloud application software | |
US9104528B2 (en) | Controlling the release of private information using static flow analysis | |
CN105718289B (zh) | 一种组件关系建立方法及其设备 | |
CN105718313A (zh) | 应用操作方法和装置 | |
US8875106B2 (en) | Automated testing process | |
US8607213B2 (en) | SCORM manifest reconciliation | |
US10101985B1 (en) | Scalable ecosystem for enterprise mobility | |
TW202044019A (zh) | 基於h5接入方式的接入方法及其接入元件和移動終端 | |
CN108345632A (zh) | H5页面的调用方法、装置、设备及计算机可读存储介质 | |
WO2014194774A1 (zh) | 创建移动应用商店的系统及方法 | |
Lee et al. | Using the web3. js APIs | |
CN104636122B (zh) | 一种能力组件的共享方法和设备 | |
CN107797818A (zh) | 应用程序升级方法及装置 | |
CN110213105A (zh) | 一种跨平台微应用创建方法 | |
CN107357607A (zh) | 文件数据的读取方法及装置 | |
CN109857432A (zh) | 一种游戏应用的热更新方法和装置 | |
WO2015067189A1 (en) | Method and apparatus for installing application | |
US10163088B2 (en) | Embedded document within an application | |
CN107832040A (zh) | 脚本获取终端类型确定支付方式的方法、装置及存储介质 | |
CN111414308A (zh) | 应用程序包的处理方法和应用程序的运行方法、装置 | |
WO2023083071A1 (zh) | 视图交互方法、装置、电子设备及计算机可读介质 | |
CN109145591A (zh) | 应用程序的插件加载方法 | |
US20150074678A1 (en) | Device and method for automating a process of defining a cloud computing resource |
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 | ||
CP01 | Change in the name or title of a patent holder |
Address after: 100088 3rd floor, block C, urban construction building, 18 Beitaipingzhuang Road, Haidian District, Beijing Patentee after: Guoxing Network Co.,Ltd. Address before: 100088 3rd floor, block C, urban construction building, 18 Beitaipingzhuang Road, Haidian District, Beijing Patentee before: DATANG NETWORK CO.,LTD. |
|
CP01 | Change in the name or title of a patent holder |