CN112232794A - 支付方法及装置、存储介质、电子设备 - Google Patents
支付方法及装置、存储介质、电子设备 Download PDFInfo
- Publication number
- CN112232794A CN112232794A CN202010956192.9A CN202010956192A CN112232794A CN 112232794 A CN112232794 A CN 112232794A CN 202010956192 A CN202010956192 A CN 202010956192A CN 112232794 A CN112232794 A CN 112232794A
- Authority
- CN
- China
- Prior art keywords
- payment
- environment
- page
- parameters
- interface
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/085—Payment architectures involving remote charge determination or related payment systems
- G06Q20/0855—Payment architectures involving remote charge determination or related payment systems involving a third party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种支付方法及装置、存储介质、电子设备,属于计算机领域。其中,该方法包括:获取支付页面的支付请求信息,其中,所述支付请求信息包括支付参数和支付环境参数;根据所述支付环境参数识别所述支付页面的支付环境,其中,所述支付环境用于表征所述支付页面的页面浏览类型;调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作。本申请解决了相关技术中支付脚本的代码冗余的技术问题,一套支付脚本可以在多个不同的支付环境中都可以完成支付操作,给接入支付需求的业务降低了接入成本,提高了开发效率,屏蔽了很多环境支付问题。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种支付方法及装置、存储介质、电子设备。
背景技术
相关技术的,线上支付是以互联网作为支付媒介的支付形式,常见的线上支付工具包括微信支付、支付宝等。
相关技术中的一个支付工具可以接入到多个渠道,如微信支付对接微信小程序支付、微信公众号支付、外部h5网页等支付渠道,业务方为了支持来自多种渠道的支付请求,需要将多个渠道的支付代码单独对接到业务代码中,导致参数繁多,流程冗长。包括支付功能的业务界面需要添加多个渠道的代码脚本,业务方根据自己所属环境来对接具体渠道的微信支付方案,不同场景分别对接,最终调用微信的支付技术方案,导致代码冗余,也很容易导致不同环境处理不完善的相关问题。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种支付方法及装置、存储介质、电子设备。
根据本申请实施例的一个方面,提供了一种支付方法,包括:获取支付页面的支付请求信息,其中,所述支付请求信息包括支付参数和支付环境参数;根据所述支付环境参数识别所述支付页面的支付环境,其中,所述支付环境用于表征所述支付页面的页面浏览类型;调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作。
根据本申请实施例的另一个方面,还提供了一种支付装置,包括:获取模块,用于获取支付页面的支付请求信息,其中,所述支付请求信息包括支付参数和支付环境参数;识别模块,用于根据所述支付环境参数识别所述支付页面的支付环境,其中,所述支付环境用于表征所述支付页面的页面浏览类型;调用模块,用于调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作。
进一步,所述识别模块包括:读取单元,用于从所述支付环境参数中读取浏览器的用户代理UA字符串;确定单元,用于若所述UA字符串包含指定字段,确定所述支付页面的支付环境为内部H5环境;若所述UA字符串不包含指定字段,确定所述支付页面的支付环境为外部H5环境。
进一步,所述确定单元包括:读取子单元,用于从所述支付环境参数中读取浏览器的环境变量字符;判断子单元,用于判断所述环境变量字符是否为指定字符;确定子单元,用于若所述环境变量字符为指定字符,确定所述支付页面的支付环境为第一内部H5环境;若所述环境变量字符不为指定字符,确定所述支付页面的支付环境为第二内部H5环境。
进一步,所述调用模块包括:第一调用单元,用于若所述支付环境为程序内部的公众号H5页面,通过JSSDK工具包调用所述支付程序的第一支付接口,其中,所述JSSDK工具包是向网页开发者提供的基于所述支付程序内的网页开发工具包;第一发送单元,用于通过所述第一支付接口向支付服务器发送所述支付参数,以完成支付操作。
进一步,所述调用模块包括:跳转单元,用于若所述支付环境为支付程序的子程序H5页面,从所述支付页面跳转至子程序支付页;第二调用单元,用于调用所述子程序支付页的第二支付接口;第二发送单元,用于通过所述第二支付接口向支付服务器发送所述支付参数,以完成支付操作。
进一步,所述调用模块包括:通知单元,用于若所述支付环境为第三方程序的H5页面,通知所述支付页面的收款方向支付程序下发支付订单,以使所述支付程序生成与所述支付订单对应的支付中间页的跳转链接;访问单元,用于访问所述跳转链接,从所述支付页面跳转至所述程序的支付中间页;第三发送单元,用于通过所述支付中间页的第三支付接口完成支付操作。
进一步,所述装置还包括:生成模块,用于在所述调用模块使用所述支付接口基于所述支付参数完成支付操作之后,响应用于指示支付完成的反馈信息,根据预设指令生成支付结果页;跳转模块,用于从当前页面跳转至所述支付结果页。
根据本申请实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的步骤。
根据本申请实施例的另一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行上述方法中的步骤。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述支付方法中提供的方法。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
在本申请实施例中,根据支付页面的支付环境参数调用与支付环境匹配的支付接口,基于一套支付脚本即可适配多个支付环境的支付操作,避免了在业务代码中部署多个支付脚本的弊端,解决了相关技术中支付脚本的代码冗余的技术问题,一套支付脚本可以在多个不同的支付环境中都可以完成支付操作,给接入支付需求的业务降低了接入成本,提高了开发效率,屏蔽了很多环境支付问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种支付方法的流程图;
图2是本发明实施例的支付原理图;
图3是本发明实施例的支付策略的流程图;
图4是根据本发明实施例的一种支付装置的结构框图;
图5是本发明实施例的一种电子设备的结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个类似的实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本实施例中提供了一种支付方法,图1是根据本发明实施例的一种支付方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,获取支付页面的支付请求信息,其中,支付请求信息包括支付参数和支付环境参数;
在本实施例的支付页面是在启动支付操作后的中转页,用于请求支付服务器进行结算,本实施例的支付页面可以在多种支付环境中触发,请求同一支付平台的支付工具进行结算。
步骤S104,根据支付环境参数识别支付页面的支付环境,其中,支付环境用于表征支付页面的页面浏览类型;
本实施例的支付环境参数携带用于表征支付环境的标识信息,通过检测标识信息,可以识别当前支付页面所在的支付环境,支付环境与浏览器的页面浏览类型对应,不同类型的浏览器在支付过程中调用的支付接口不同。
步骤S106,调用与支付环境匹配的支付接口,并使用支付接口基于支付参数完成支付操作。
在本实施例的应用场景中,支付程序作为一种线上的支付工具,为了适配多种支付环境,每个支付环境会对应一种支付接口,通过调用与支付环境对应的支付接口,可以从当前支付页面连接到支付服务器,并与服务器通信,完成支付操作。
通过上述步骤,获取支付页面的支付请求信息,然后根据支付环境参数识别支付页面的支付环境,最后调用与支付环境匹配的支付接口,并使用支付接口基于支付参数完成支付操作,根据支付页面的支付环境参数调用与支付环境匹配的支付接口,基于一套支付脚本即可适配多个支付环境的支付操作,避免了在业务代码中部署多个支付脚本的弊端,解决了相关技术中支付脚本的代码冗余的技术问题,一套支付脚本可以在多个不同的支付环境中都可以完成支付操作,给接入支付需求的业务降低了接入成本,提高了开发效率,屏蔽了很多环境支付问题。
在本实施例的一个实施方式中,通过支付环境参数中的标识字段来识别支付环境,该标识字段是预先约定好的。不同的支付工具(如支付宝、微信支付等),对应的标识字段不同。根据支付环境参数识别支付页面的支付环境包括:
S11,从支付环境参数中读取浏览器的UA(User Agent,用户代理)字符串;
UA字符串是客户端浏览器等应用程序使用的一种特殊的网络协议,在每次浏览器进行HTTP请求进行访问,被访问端通过UA字符串可以识别用户使用的页面浏览类型。
S12,判断UA字符串是否包含指定字段;
以支付工具为微信支付为例进行说明,在一个示例中,指定字段为micromessage字段,通过遍历检测UA字符串中的全部字段,或者在指定位置检测UA字符串,判断UA字符串是否包含“micromessage”的字段;
S13,若UA字符串包含指定字段,确定支付页面的支付环境为内部H5环境;若UA字符串不包含指定字段,确定支付页面的支付环境为外部H5环境。
在本实施例中,外部H5环境为未集成支付工具的浏览器环境,如微信外的浏览器(即第三方浏览器)的H5环境,本实施例的H5即HTML5,是在浏览器或应用程序中构建Web内容的一种语言描述方式,当然,除了H5,也可以应用在其他语言环境中。
在一些实施场景中,支付工具(如微信支付、支付宝支付等)的支付程序中包括多种内部支付接口,用于在支付程序的内部程序(如微信中的微信公众号、小程序等,支付宝中的生活号等)中触发,支付程序可以应用在多个内部H5环境中,每一种内部H5环境对应一种支付接口,在这种情况下,还可以进一步判断是哪一种内部H5环境。
在本实施例的一个实施方式中,确定支付页面的支付环境为内部H5环境包括:从支付环境参数中读取浏览器的环境变量字符;判断环境变量字符是否为指定字符;若环境变量字符为指定字符,确定支付页面的支付环境为第一内部H5环境;若环境变量字符不为指定字符,确定支付页面的支付环境为第二内部H5环境。
以支付程序为微信支付为例进行说明,从支付环境参数中读取浏览器的环境变量字符时,从支付环境参数中读取window.__wxjs.environment字符,并进一步判断其赋值,如果window.__wxjs.environment===‘miniprogram’,则是微信小程序的H5环境,否则是微信公众号的H5环境,其中,miniprogram字符是预先约定的字符,当然也可以用其他字符来约定微信公众号的H5环境,同样的,也可以同其他字符来约定其他的内部H5环境,如微信小程序的内部H5环境。
本实施例的支付环境包括内部支付环境和外部支付环境,在不同的支付环境中,触发不同的支付接口,进而通过支付接口执行不同的支付流程,下面对三种支付环境中的支付流程进行详细说明:
在一个示例中,调用与支付环境匹配的支付接口,并使用支付接口基于支付参数完成支付操作,包括:若支付环境为程序内部的公众号H5页面,通过JSSDK工具包调用支付程序的第一支付接口,其中,JSSDK工具包是向网页开发者提供的基于支付程序内的网页开发工具包;通过第一支付接口向支付服务器发送支付参数,以完成支付操作。
通过使用微信JSSDK,网页开发者可借助微信高效地使用拍照、选图、语音、位置等手机***的能力,同时可以直接使用微信分享、扫一扫、卡券、支付等微信特有的能力,为微信用户提供更优质的网页体验,在本实施例中JSSDK调用的为支付能力。
可选的,支付参数包括timestamp,noncestr,package,signtype,paysign,分别为支付签名时间戳,支付签名随机串,统一支付接口返回的prepay_id,签名方式,支付签名内容。支付参数用于校验支付操作的合法性,如果合法,则向支付服务器发送付款账户、收款账户,支付金额、时间等账目信息,以使支付服务器完成转账。
在另一个示例中,调用与支付环境匹配的支付接口,并使用支付接口基于支付参数完成支付操作,包括:若支付环境为支付程序的子程序H5页面,从支付页面跳转至子程序支付页;调用子程序支付页的第二支付接口;通过第二支付接口向支付服务器发送支付参数,以完成支付操作。
在该示例中,子程序是嵌入在支付程序内的程序,可以在支付程序内单独启动和运行,如微信的小程序等,支付参数与公众号H5页面的支付参数相同,包括timestamp,noncestr,package,signtype,paysign。先向支付服务器发送支付参数,校验当前支付操作的合法性,如果合法,则向支付服务器发送付款账户、收款账户,支付金额、时间等账目信息,以使支付服务器完成转账。
在又一个示例中,调用与支付环境匹配的支付接口,并使用支付接口基于支付参数完成支付操作,包括:若支付环境为第三方程序的H5页面,通知支付页面的收款方向所述支付程序下发支付订单,以使所述支付程序生成与支付订单对应的支付中间页的跳转链接;访问跳转链接,从支付页面跳转至程序的支付中间页;通过支付中间页的第三支付接口完成支付操作。
可选的,跳转链接是一个URL(Uniform Resource Locator,统一资源***)链接。在支付环境为第三方程序的H5页面时,需要通过链接唤起支付工具所在的程序(如微信app),并跳转到程序的支付中间页,通过支付中间页的第三支付接口向支付服务器发送付款账户、收款账户,支付金额、时间等账目信息,以使支付服务器完成转账。
可选的,在使用支付接口基于支付参数完成支付操作之后,还包括:响应用于指示支付完成的反馈信息,根据预设指令生成支付结果页;从当前页面跳转至支付结果页。通过提前指定支付完成结果页,等待用户手动支付完成后自动跳转即可在支付结果页中继续处理下一步业务,如支付完成后跳转回原商品的展示页面,跳转至物流信息的展示页面等。如果支付失败也可以跳转到另一个支付结果页。
图2是本发明实施例的支付原理图,图3是本发明实施例的支付策略的流程图,业务方根据自己所属环境来对接具体的微信支付方案,不同的支付环境分别对接,最终调用微信的支付接口。流程包括:访问支付页面,在支付页面获取订单参数(支付参数和支付环境参数),根据跳转到支付页的浏览器ua(User-Agent)字符串判断是否包含micromessage字段来确定是否是外部H5环境,如果是微信内部的H5环境再根据window.__wxjs.environment===‘miniprogram’来区分是小程序内嵌H5还是公众号H5类型,如果window.__wxjs.environment===‘miniprogram’,则是小程序内嵌H5环境,否则是公众号H5环境,如果是公众号H5,继续调用微信jssdk提供的wx.chooseWXPay()接口完成支付,如果是小程序内嵌H5的话,跳转到小程序支付页,调用小程序支付api wx.requestPayment()接口来完成支付动作,如果是外部环境的普通H5,则通知后台商户***向微信下单生成跳转微信支付中间页的链接,访问此链接,唤起微信app并跳转到微信支付中间页,完成支付再跳转回支付结果页。
整个过程,只需要传递订单参数过来,无需关心不同支付场景差异处理方式,只需要提前指定支付完成结果页,等待用户支付完成后自动跳转即可处理下一步业务。支付中间页最终还是调用微信原生支付策略,通过多种支付方式集成和自动识别,所以安全性跟独立对接各场景微信支付的安全性相同。支付完成后,自动跳转到发起页面指定的支付完成页。
使用本实施例的技术方案,业务方只需关心订单id这个唯一参数,在多个不同的支付环境中都可以完成支付操作,给接入支付需求的业务降低了接入成本,提高开发效率,屏蔽了很多环境支付问题。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种支付装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的一种支付装置的结构框图,如图3所示,该装置包括:获取模块40,识别模块42,调用模块44,其中,
获取模块40,用于获取支付页面的支付请求信息,其中,所述支付请求信息包括支付参数和支付环境参数;
识别模块42,用于根据所述支付环境参数识别所述支付页面的支付环境,其中,所述支付环境用于表征所述支付页面的页面浏览类型;
调用模块44,用于调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作。
可选的,所述识别模块包括:读取单元,用于从所述支付环境参数中读取浏览器的用户代理UA字符串;确定单元,用于若所述UA字符串包含指定字段,确定所述支付页面的支付环境为内部H5环境;若所述UA字符串不包含指定字段,确定所述支付页面的支付环境为外部H5环境。
可选的,所述确定单元包括:读取子单元,用于从所述支付环境参数中读取浏览器的环境变量字符;判断子单元,用于判断所述环境变量字符是否为指定字符;确定子单元,用于若所述环境变量字符为指定字符,确定所述支付页面的支付环境为第一内部H5环境;若所述环境变量字符不为指定字符,确定所述支付页面的支付环境为第二内部H5环境。
可选的,所述调用模块包括:第一调用单元,用于若所述支付环境为程序内部的公众号H5页面,通过JSSDK工具包调用所述支付程序的第一支付接口,其中,所述JSSDK工具包是向网页开发者提供的基于所述支付程序内的网页开发工具包;第一发送单元,用于通过所述第一支付接口向支付服务器发送所述支付参数,以完成支付操作。
可选的,所述调用模块包括:跳转单元,用于若所述支付环境为支付程序的子程序H5页面,从所述支付页面跳转至子程序支付页;第二调用单元,用于调用所述子程序支付页的第二支付接口;第二发送单元,用于通过所述第二支付接口向支付服务器发送所述支付参数,以完成支付操作。
可选的,所述调用模块包括:通知单元,用于若所述支付环境为第三方程序的H5页面,通知所述支付页面的收款方向所述支付程序下发支付订单,以使所述支付程序生成与所述支付订单对应的支付中间页的跳转链接;访问单元,用于访问所述跳转链接,从所述支付页面跳转至所述程序的支付中间页;第三发送单元,用于通过所述支付中间页的第三支付接口完成支付操作。
可选的,所述装置还包括:生成模块,用于在所述调用模块使用所述支付接口基于所述支付参数完成支付操作之后,响应用于指示支付完成的反馈信息,根据预设指令生成支付结果页;跳转模块,用于从当前页面跳转至所述支付结果页。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本申请实施例还提供了一种电子设备,图5是本发明实施例的一种电子设备的结构图,如图5所示,包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信;
存储器53,用于存放计算机程序;
处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:
获取支付页面的支付请求信息,其中,所述支付请求信息包括支付参数和支付环境参数;根据所述支付环境参数识别所述支付页面的支付环境,其中,所述支付环境用于表征所述支付页面的页面浏览类型;调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作。
进一步,根据所述支付环境参数识别所述支付页面的支付环境包括:从所述支付环境参数中读取浏览器的用户代理UA字符串;若所述UA字符串包含指定字段,确定所述支付页面的支付环境为内部H5环境;若所述UA字符串不包含指定字段,确定所述支付页面的支付环境为外部H5环境。
进一步,确定所述支付页面的支付环境为内部H5环境包括:从所述支付环境参数中读取浏览器的环境变量字符;判断所述环境变量字符是否为指定字符;若所述环境变量字符为指定字符,确定所述支付页面的支付环境为第一内部H5环境;若所述环境变量字符不为指定字符,确定所述支付页面的支付环境为第二内部H5环境。
进一步,调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作,包括:若所述支付环境为程序内部的公众号H5页面,通过JSSDK工具包调用所述支付程序的第一支付接口,其中,所述JSSDK工具包是向网页开发者提供的基于所述支付程序内的网页开发工具包;通过所述第一支付接口向支付服务器发送所述支付参数,以完成支付操作。
进一步,调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作,包括:若所述支付环境为支付程序的子程序H5页面,从所述支付页面跳转至子程序支付页;调用所述子程序支付页的第二支付接口;通过所述第二支付接口向支付服务器发送所述支付参数,以完成支付操作。
进一步,调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作,包括:若所述支付环境为第三方程序的H5页面,通知所述支付页面的收款方向所述支付程序下发支付订单,以使所述支付程序生成与所述支付订单对应的支付中间页的跳转链接;访问所述跳转链接,从所述支付页面跳转至所述程序的支付中间页;通过所述支付中间页的第三支付接口完成支付操作。
进一步,在使用所述支付接口基于所述支付参数完成支付操作之后,所述方法还包括:响应用于指示支付完成的反馈信息,根据预设指令生成支付结果页;从当前页面跳转至所述支付结果页。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的支付方法。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的支付方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种支付方法,其特征在于,包括:
获取支付页面的支付请求信息,其中,所述支付请求信息包括支付参数和支付环境参数;
根据所述支付环境参数识别所述支付页面的支付环境,其中,所述支付环境用于表征所述支付页面的页面浏览类型;
调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作。
2.根据权利要求1所述的方法,其特征在于,根据所述支付环境参数识别所述支付页面的支付环境包括:
从所述支付环境参数中读取浏览器的用户代理字符串;
若所述用户代理字符串包含指定字段,确定所述支付页面的支付环境为内部H5环境;若所述用户代理字符串不包含指定字段,确定所述支付页面的支付环境为外部H5环境。
3.根据权利要求2所述的方法,其特征在于,确定所述支付页面的支付环境为内部H5环境包括:
从所述支付环境参数中读取浏览器的环境变量字符;
若所述环境变量字符为指定字符,确定所述支付页面的支付环境为第一内部H5环境;若所述环境变量字符不为指定字符,确定所述支付页面的支付环境为第二内部H5环境。
4.根据权利要求1所述的方法,其特征在于,调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作,包括:
若所述支付环境为程序内部的公众号H5页面,通过工具包调用支付程序的第一支付接口,其中,所述工具包是向网页开发者提供的基于所述支付程序内的网页开发工具包;
通过所述第一支付接口向支付服务器发送所述支付参数,以完成支付操作。
5.根据权利要求1所述的方法,其特征在于,调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作,包括:
若所述支付环境为支付程序的子程序H5页面,从所述支付页面跳转至子程序支付页;
调用所述子程序支付页的第二支付接口;
通过所述第二支付接口向支付服务器发送所述支付参数,以完成支付操作。
6.根据权利要求1所述的方法,其特征在于,调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作,包括:
若所述支付环境为第三方程序的H5页面,通知所述支付页面的收款方向支付程序下发支付订单,以使所述支付程序生成与所述支付订单对应的支付中间页的跳转链接;
访问所述跳转链接,从所述支付页面跳转至所述程序的支付中间页;
通过所述支付中间页的第三支付接口完成支付操作。
7.根据权利要求1所述的方法,其特征在于,在使用所述支付接口基于所述支付参数完成支付操作之后,所述方法还包括:
响应用于指示支付完成的反馈信息,根据预设指令生成支付结果页;
从当前页面跳转至所述支付结果页。
8.一种支付装置,其特征在于,包括:
获取模块,用于获取支付页面的支付请求信息,其中,所述支付请求信息包括支付参数和支付环境参数;
识别模块,用于根据所述支付环境参数识别所述支付页面的支付环境,其中,所述支付环境用于表征所述支付页面的页面浏览类型;
调用模块,用于调用与所述支付环境匹配的支付接口,并使用所述支付接口基于所述支付参数完成支付操作。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7中任一项所述的方法步骤。
10.一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:
存储器,用于存放计算机程序;
处理器,用于通过运行存储器上所存放的程序来执行权利要求1至7中任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010956192.9A CN112232794A (zh) | 2020-09-11 | 2020-09-11 | 支付方法及装置、存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010956192.9A CN112232794A (zh) | 2020-09-11 | 2020-09-11 | 支付方法及装置、存储介质、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112232794A true CN112232794A (zh) | 2021-01-15 |
Family
ID=74116744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010956192.9A Pending CN112232794A (zh) | 2020-09-11 | 2020-09-11 | 支付方法及装置、存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112232794A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965841A (zh) * | 2021-04-05 | 2021-06-15 | 朱小英 | 基于h5的云手机支付方法及装置 |
CN113032703A (zh) * | 2021-02-24 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 资源数据处理方法、装置、计算机设备和存储介质 |
CN113268685A (zh) * | 2021-03-26 | 2021-08-17 | 深圳九星互动科技有限公司 | 一种网页聚合支付的跳转控制方法、装置、***及介质 |
CN114217890A (zh) * | 2021-11-18 | 2022-03-22 | 深圳市优克联新技术有限公司 | 界面控制方法、装置、聚合支付平台及存储介质 |
CN114399299A (zh) * | 2021-12-22 | 2022-04-26 | 中国电信股份有限公司 | 支付方法、装置、电子设备及存储介质 |
CN114756283A (zh) * | 2022-06-14 | 2022-07-15 | 山东鼎信数字科技有限公司 | 一种兼容多种软件环境授权与支付的方法 |
-
2020
- 2020-09-11 CN CN202010956192.9A patent/CN112232794A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113032703A (zh) * | 2021-02-24 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 资源数据处理方法、装置、计算机设备和存储介质 |
CN113032703B (zh) * | 2021-02-24 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 资源数据处理方法、装置、计算机设备和存储介质 |
CN113268685A (zh) * | 2021-03-26 | 2021-08-17 | 深圳九星互动科技有限公司 | 一种网页聚合支付的跳转控制方法、装置、***及介质 |
CN112965841A (zh) * | 2021-04-05 | 2021-06-15 | 朱小英 | 基于h5的云手机支付方法及装置 |
CN114217890A (zh) * | 2021-11-18 | 2022-03-22 | 深圳市优克联新技术有限公司 | 界面控制方法、装置、聚合支付平台及存储介质 |
CN114399299A (zh) * | 2021-12-22 | 2022-04-26 | 中国电信股份有限公司 | 支付方法、装置、电子设备及存储介质 |
CN114756283A (zh) * | 2022-06-14 | 2022-07-15 | 山东鼎信数字科技有限公司 | 一种兼容多种软件环境授权与支付的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112232794A (zh) | 支付方法及装置、存储介质、电子设备 | |
CN107168960B (zh) | 一种业务执行方法及装置 | |
CN107360261B (zh) | 一种http请求处理方法、装置及电子设备 | |
CN111160845A (zh) | 一种业务处理方法和装置 | |
CN112199300B (zh) | 一种接口测试方法、装置、电子设备及存储介质 | |
CN107835228B (zh) | 一种基于动态广义路由的指令处理方法及装置 | |
CN113641940B (zh) | 页面跳转方法、装置、***、设备及存储介质 | |
CN111858376A (zh) | 请求报文生成方法和接口测试方法 | |
CN109034603B (zh) | 业务流程执行方法、设备及计算机可读存储介质 | |
CN107861765B (zh) | 产品配置方法、设备和计算机可读存储介质 | |
CN113923144A (zh) | 业务的测试***、方法、电子设备和存储介质 | |
CN109446445B (zh) | 一种资源获取方法及装置 | |
CN108509228B (zh) | 加载页面的方法、终端设备及计算机可读存储介质 | |
CN107534860A (zh) | WiFi热点Portal认证方法和装置 | |
CN108243229B (zh) | 请求处理方法及装置 | |
CN112818270A (zh) | 数据跨域传递方法、装置及计算机设备 | |
CN112115103A (zh) | 文件地址显示方法、装置、电子设备及可读存储介质 | |
CN110795646A (zh) | 请求处理方法、装置、电子设备和计算机可读存储介质 | |
CN115795212A (zh) | 一种页面显示方法、装置、电子设备及存储介质 | |
CN111338928A (zh) | 基于chrome浏览器测试的方法及装置 | |
CN112069430B (zh) | 快应用预览方法、装置、电子设备及存储介质 | |
CN110427745B (zh) | 验证码获取方法、装置、电子设备和计算机可读介质 | |
CN104679786B (zh) | 一种表单处理的方法及装置 | |
CN110868477A (zh) | 任务调度方法、装置及*** | |
CN112929321B (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 |