美文网首页
记一次支付宝对接

记一次支付宝对接

作者: 夜色001 | 来源:发表于2021-04-21 16:10 被阅读0次

    一、场景

    微信公众号要支付宝支付,采用支付宝手机网站支付的方式。对接使用支付宝最新sdk,向前端输出form表单。

    二、准备工作

    支付宝公钥证书
    支付宝根证书
    支付宝应用公钥证书【这个要特别注意,以后对接是要先检查,证书和私钥是否匹配】

    三、问题解决

    输出的内容中包含url

    {
    "code": 0,
    "msg": "success",
    "data": {
    "alipay": "<form name="punchout_form" method="post" action="https://openapi.alipay.com/gateway.do?app_cert_sn=88d26dd3705b867c9475b2dcf73bbc0b&charset=utf-8&alipay_root_cert_sn=687b59193f3f462dd5336e5abf83c5d8_02941eef3187dddf3d3b83462e1dfcf6&method=alipay.trade.wap.pay&sign=FMkH%2Bfgw9Kg52Nd1eWPnBqmK5bOfm0P5D%2F3%2BqIbZUq8rlAdbeyqdrBPFGPMewi6xp2iA5IvcvRHq2XBrvJMFAOcexYm%2Fv5QYa65Gz1ytxHSxX69Q99%2FSUiPJhN1px%2BIBN7lWpskYofgankxpVkhRQI%2FgKvs0hTkDXCRXSQWWE6zUYus1K3IeOjXmzrh6y5%2B1PL02VJzAtVngiIrXcx%2Bx4zenT4Sw25TDS74qIvx%2FvAl%2BRUthJiFoINDbEJLGVGGypXhqzOPpAWhocgH1%2B9j6eaCp3EZXsxq1exhYr2W1aMnLzCOxZpMlvE7U23VxrzzovLuyWkBqL0crEe0YHs%2BkXw%3D%3D&notify_url=http%3A%2F%2Flocalhost%3A10154%2Fapi%2Ffront%2Fali%2Fpay%2Fcallback&version=1.0&app_id=2021002133674198&sign_type=RSA2&timestamp=2021-04-21+15%3A25%3A50&alipay_sdk=alipay-sdk-java-dynamicVersionNo&format=json">\n<input type="hidden" name="biz_content" value="{"body":"外卖订单","out_trade_no":"20210421152550bUL1Ho","passback_params":"2d224","product_code":"QUICK_WAP_PAY","quit_url":"https:\/\/mp-user-xkcy154.haichuang.pro\/pages\/wx","subject":"外卖订单","timeout_express":"30m","total_amount":"0.01"}">\n<input type="submit" value="立即支付" style="display:none" >\n</form>\n<script>document.forms[0].submit();</script>"
    }
    }

    注意这个form表单,放到html中的时候,要将"替换成",同时\n替换成 空。最重要的要将\/替换成/,(java在处理的时候,将/变成了\/)要不然就会报invalid-signature错误,这个错误我排查了5天。

    相关文章

      网友评论

          本文标题:记一次支付宝对接

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