PHP SDKでアリペイアプリで支払い(注文とチェック)
5965 ワード
一、以下のように支付宝アプリにPHP SDK DEMOアドレスを支払う.
https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.jxZiS8&treeId=54&articleId=106370&docType=1#s4
二、以下はアリペイアプリの支説明:ここではCIフレームワークを使用し、正式にオンラインになるにはパラメータ$aop->appId、$aop->rsaPrivateKey、$aop->alipayrsaPublicKeyを正式に変更する必要があります. サンプルコードのAPP IDである$aop->appIdは、砂箱アプリケーションから取得される. 公式サイトで提供されている公開鍵生成ツールを使用して、1対のアプリケーション秘密鍵($aop->rsaPrivateKey)と1つのアプリケーション公開鍵を一度に生成します.アプリケーション公開鍵を砂箱環境にアップロード(オンラインで正式な環境にアップロード)して、アリペイ公開鍵($aop->alipayrsaPublickey)を取得します. 公式サイトdemoでは、アリペイが返す前支払い情報をhtmlspecialchars()で処理する.本人がhtmlspecialcharsで処理した後、アンドロイドフロントエンドは支払いインタフェースを呼び出すことができませんでした.したがって、例ではhtmlspecialchars()は使用されません.
三、チェックアリペイ非同期チェックアウトドキュメント:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.fFjclt&treeId=204&articleId=105301&docType=1#s6 上段コードに$request->setNotifyUrl()が記入したコールバックURLは、次の方法を指します.
https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.jxZiS8&treeId=54&articleId=106370&docType=1#s4
二、以下はアリペイアプリの支
class AlipayController extends CI_Controller
{
function pay()
{
require_once('/www/my/app/third_party/alipay/aop/AopClient.php');
require_once('/www/my/app/third_party/alipay/aop/request/AlipayTradeAppPayRequest.php');
$aop = new \AopClient();
//**
$aop->gatewayUrl = "https://openapi.alipay.com/gateway.do";
// app id
$aop->appId = "2016080300158242";
$aop->rsaPrivateKey = ' ';
$aop->format = "json";
$aop->charset = "UTF-8";
$aop->signType = "RSA";
$aop->alipayrsaPublicKey = ' ';
$bizcontent = json_encode([
'body'=>' ',
'subject'=>' ',
'out_trade_no'=>'123456',//
'total_amount'=> '9.88',//
'product_code'=>'QUICK_MSECURITY_PAY'
]);
//**
// API request , , :alipay.trade.app.pay
$request = new \AlipayTradeAppPayRequest();
//
$request->setNotifyUrl("https://demo.com/pay/alinotify");
$request->setBizContent($bizcontent);
// , sdkExecute
$response = $aop->sdkExecute($request);
echo $response;
}
三、チェック
class AlipayNotifyController extends CI_Controller
{
function notify()
{
require_once('/www/my/app/third_party/alipay/aop/AopClient.php');
$aop = new AopClient;
$aop->alipayrsaPublicKey = ' , ';
//
$flag = $aop->rsaCheckV1($_POST, NULL, "RSA");
// , 。
/**
① trade_status、out_trade_no、total_amount、seller_id
②
**/
// success, 。 。 success, 。
echo 'success';
}
}