美文网首页
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