美文网首页
PC端第三方支付接口

PC端第三方支付接口

作者: godfrey1989 | 来源:发表于2019-01-02 20:14 被阅读0次

    applica.yml文件配置微信、支付宝支付接口调用参数;

    支付宝支付

    第一步:生成订单,保存订单信息(除了支付状态、支付时间等状态)

    orderService.save(order);

    第二步:封装客户端请求

    AlipayClient client=new DefaultAlipayClient(alipayProperties.getUrl(),alipayProperties.getAppid(),alipayProperties.getRsa_private_key(),alipayProperties.getFormat(),alipayProperties.getCharset(),alipayProperties.getAlipay_public_key(),alipayProperties.getSigntype());

    第三步:

    支付宝服务器异步通知:支付完成获取支付宝GET过来反馈信息

    boolean signVerified = AlipaySignature.rsaCheckV1(params,alipayProperties.getAlipay_public_key(),alipayProperties.getCharset(),alipayProperties.getSigntype());//调用SDK验证签名

    验证支付完成,更新订单表

    order.setBuyTime(new Date());// 支付时间

    order.setIsPay(1);// 支付支付状态 已经支付

    orderService.save(order);

    支付宝服务器同步通知:跳转支付成功页面

    boolean signVerified = AlipaySignature.rsaCheckV1(params,alipayProperties.getAlipay_public_key(),alipayProperties.getCharset(),alipayProperties.getSigntype());//调用SDK验证签名

    微信支付

    第一步:微信支付需要传入参数到微信后台,跳转到支付页面

    weixinpay.ftl页面,image标签调loadPayImage方法并将返回数据流生成支付二维码,扫码并支付

    <image src="/weixinpay/loadPayImage?id=${order.id?c}"></image>

    同时生成订单,保存订单信息(除了支付状态、支付时间等状态)

    orderService.save(order);

    第二步:支付完成,微信服务器异步通知notifyUrl调isTenpaySign方法验证支付结果

    验证支付完成更新订单表

    order.setBuyTime(new Date());// 支付时间

    order.setIsPay(1);// 支付支付状态 已经支付

    orderService.save(order);

    第三步:weixinpay.ftl支付页面定时查询订单支付结果loadPayState

    function orderStatus(){

    $.post("/weixinpay/loadPayState",{

    id:${order.id?c}},

    function(data,status){

    if(data==1){

    location.href ="/weixinpay/returnUrl";

    }});}

    setInterval("orderStatus()",3000);

    支付成功,跳转returnUrl页面

    相关文章

      网友评论

          本文标题:PC端第三方支付接口

          本文链接:https://www.haomeiwen.com/subject/nortrqtx.html