美文网首页
apicloud app接通支付宝支付

apicloud app接通支付宝支付

作者: a十二_4765 | 来源:发表于2018-11-02 17:03 被阅读361次

    好久没更新了 使用apicloud 开发的app 接通支付宝支付

    1.

    先操作支付宝 需要先签约支付宝

    签约完成审核通过后

    有个公钥设置,如果没有就去下载,下载完 注意不要放到有中文的路径 然后点击生成

    生成完复制下 放到公钥里面 私钥就是那个rsa_private_key.pem 

    设置完后去 APIcloud 里

    先配置config.xml

    . <feature name="aliPay">

          <param name="urlScheme" value="AliPayA000000011" />

      </feature>

    .

    然后到index.html 里面

    <!doctype html>

    <html lang="zh-CN">

    <head>

        <meta charset="utf-8">

    <title>支付宝支付</title>

    </head>

    <body>

    <div class="container">

    <div class="panel panel-default">

    <div class="panel-heading">

    <strong>支付宝支付测试</strong>

    </div>

    <div class="panel-body">

    <div class="form-group">

    <div class="col-sm-offset-2 col-sm-10">

    <button type="submit"  onclick="aliPay()"class="btn btn-success">立即支付</button>

    </div>

    </div>

    <!-- </form> -->

    </div>

    </div>

    </div>

    </body>

    <script >

    function aliPay() {

      var aliPay = api.require('aliPay');

    aliPay.payOrder({

        orderInfo: '这里面是需要请求后台接口获取的'

      }, function(ret, err) {

        api.alert({

            title: '支付1结果',

            msg: ret.code,

            buttons: ['确定']

        });

    });

    };

    </script>

    都配置完了就去后台了

    后台代码 

    建立一个index.php 的文件

    public function alipay()

    {

            require_once 'F://sapp/aop/AopClient.php';  //这俩个是支付宝提供的demo 你可以直接去支付宝上下载就像 记得更换路径支付宝app服务端

            require_once 'F://sapp/aop/request/AlipayTradeAppPayRequest.php';

            $aop = new \AopClient();

            $aop->gatewayUrl = "https://openapi.alipay.com/gateway.do";

            $aop->appId = "appid";

            $aop->rsaPrivateKey = '你的私钥';

            $aop->format = "json";

            $aop->charset = "UTF-8";

            $aop->signType = "RSA2";

            $aop->alipayrsaPublicKey = '你的公钥匙';

    //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay

            $request = new \AlipayTradeAppPayRequest();

            //详细

            $body=$_POST['body'];

        //订单信息

        $subject =$_POST['subject'];

        //订单号

        $out_trade_no = $_POST['out_trade_no'];

        //价格

        $total_amount =$_POST['total_amount'];

    //SDK已经封装掉了公共参数,这里只需要传入业务参数

            $bizcontent = "{\"body\":\"$body\","

                . "\"subject\": \"$subject\","

                . "\"out_trade_no\": \"$out_trade_no\","

                . "\"timeout_express\": \"30m\","

                . "\"total_amount\": \"$total_amount\","

                . "\"product_code\":\"QUICK_MSECURITY_PAY\""

                . "}";

            $request->setNotifyUrl("回调地址");

            $request->setBizContent($bizcontent);

    //这里和普通的接口调用不同,使用的是sdkExecute

            $response = $aop->sdkExecute($request);

    //htmlspecialchars是为了输出到页面时防止被浏览器将关键参数html转义,实际打印到日志以及http传输不会有这个问题

            echo htmlspecialchars($response);//就是orderString 可以直接给客户端请求,无需再做处理。

        }

    把echo 输出的内容 放到前台里面

    这样就成功了!!!! 

    AopClient.php 代码

    如有任何问题请留言

    相关文章

      网友评论

          本文标题:apicloud app接通支付宝支付

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