houweizhifu 2019-07-01
目前项目中比较常用的第三方支付无非就是支付宝支付和微信支付。下面介绍一下Vue中H5页面如何使用支付宝支付。其实很简单的,只不过是调自己后台的一个接口而已(后台根据支付宝文档,写好支付接口)。
触发支付宝支付调用后台接口,后台会返回支付宝提供的form表单,我们只要在vue里面创建新节点,将返回的form表单append进去,并提交就可以唤起支付宝支付。另在此说一下这个returnUrl, 它是支付后支付宝回调的页面。具体可以根据自身业务,后台写死或者由前端控制。
methods () { /** * 支付宝支付 */ goAlipay () { this.$loading.show() const data = { /* 自身接口所需的一些参数 */ ... amount: this.price, /* 支付后支付宝return的url */ // returnUrl: 'www.baidu.com' returnUrl: window.location.origin + window.location.pathname + '?userParams=' + this.userParams } this.$http( this.$apiSetting.alipay, data ).then(res => { this.$loading.hide() if (res.data.statusCode === '000000') { const div = document.createElement('div') /* 此处form就是后台返回接收到的数据 */ div.innerHTML = res.data.data.alipayInfo document.body.appendChild(div) document.forms[0].submit() } }, error => { this.$loading.hide() console.log(error) }) } }