支付宝怎么提交html表单提交,uniapp H5 支付表单提交问题解决烦方案

uniapp的H5封装支付宝个微信支付,以支付宝为例,下单成功后返回的是HTML表单和一段JS,把代码输出到浏览器,JS只执行submit事件POST跳转提交表单到支付宝。说白了就是

这段代码点击的亚子

但是uni编译的H5不行,哪怕v-html都不行,即便这个代码在H5上本身没有问题。

我也是实在没办法,就用过数据库实现,过程如下

1:下单成功,获取到HTML

2:存入数据库,我设置的结构是 sign char(13) html text end (int 11),一个是存取唯一标识,一个是for内容,一个是过期是间

3:数据插入成功,反回访问地址,比如后台返回url='https://ask.dcloud.net.cn?sign=g4hdcbg15ryh5';

4:uniapp拿到sign 执行location.href=url;

5:这个地址不是uniapp的范围,是传统html站点,通过sign取出数据,输出就好了,并且删除这条表单数据

前端代码:

//#ifdef H5

if(res.type=='alih5'){

window.open(res.order,'_self')

window.close();

}

//#endif

后台输出

public function actionAlwap()

{

$sign = Input::trim('get.sign', 0);//查询唯一令牌

$form = Alwap::find()->where(['sign' => $sign])->one();

if (!$form) {//没有返回

return $this->redirect(Input::referrer())->send();

}

$form->delete();//获取成功,不管怎样直接删除

if ($form->time + 60 < time()) {//过去就返回

return $this->redirect(Input::referrer())->send();

}

return $form->form;//否则输出

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值