aliPayPlus 科普使用

本文出自APICloud官方論壇,
感謝論壇版主City7的分享。

首先到
https://open.alipay.com/platf... 申請應用上線

支付寶網關:這裏是支付寶配置 把域名寫成你自已的
https://openapi.alipay.com/ga...

應用網關:
http://shop.*.com

授權回調地址:
http://shop.**.com/authRedirect.php

加簽方式:
RSA(SHA256)密鑰
[url=]查看應用公鑰/url查看支付寶公鑰[/url]

下面是GetAliPaySign.php 源 方案一:開發者通過 payOrder 方法來進行支付,自己處理訂單信息以及簽名過程;要用到這個源

<?php
/**
* APP支付 RSA2簽名方法
*/
require_once 'AopSdk.php';

$rsaPrivateKey="";//對應,rsa_private_key.pem裏面的內容 一定要是一行,注意,不要刪一個字節

$alipayrsaPublicKey='';//對應 rsa_public_key.pem裏面的內容 一定要是一行,注意
        
$aop = new AopClient ();
$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
$aop->appId = '201903***********';//用你的APPID
$aop->rsaPrivateKey = $rsaPrivateKey;
$aop->alipayrsaPublicKey=$alipayrsaPublicKey;
$aop->apiVersion = '1.0';
$aop->postCharset='utf-8';
$aop->format='json';
$aop->signType = 'RSA2';
//生成隨機訂單號
$date=date("YmdHis");
$arr=range(1000,9999);
shuffle($arr);
$request = new AlipayTradeAppPayRequest();
//異步地址傳值方式
$request->setNotifyUrl("http://shop.****.com/authRedirect.php");
$request->setBizContent("{\"out_trade_no\":\"".$date.$arr[0]."\",\"total_amount\":0.01,\"product_code\":\"QUICK_MSECURITY_PAY\",\"subject\":\"app測試\"}");
$result = $aop->sdkExecute($request);
//print_r(htmlspecialchars($result));
echo json_encode(array("data"=>$result));
                                exit();
?>

下面是JS代碼 先從服務器取訂單信息

function Getalipaysign(out_trade_no,subject,body,total_amount)
      {
        api.ajax({
            url: window.AppWeb + 'alipay/GetAliPaySign.php',
            method: 'post',
            data: {
                values: {
                    out_trade_no: out_trade_no,
                    subject:subject,
                    body:body,
                    total_amount:total_amount
                }
            }
        },function(ret, err){
            if (ret) {
                console.log( JSON.stringify( ret ) );
                alipayData = ret.data;
            } else {
                alert( JSON.stringify( err ) );
            }
        });


      }

//確認支付時,使用
      function Pay()
      {

        if(alipayData)
        {
          console.log('支付寶支付');
          var aliPayPlus = api.require('aliPayPlus');
              aliPayPlus.payOrder({
                  orderInfo:alipayData//服務器取回的數據
              }, function(ret, err) {
                console.log(JSON.stringify(ret));
                if(ret)
                {
                  api.alert({
                      title: '支付結果',
                      msg: ret.code,
                      buttons: ['確定']
                  });
                }
                else {
                  $api.Api_alert(err.msg);
                }

              });
        }
      }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章