ホームページ  >  記事  >  WeChat アプレット  >  WeChat決済開発トランザクション通知サンプルコードの詳細説明

WeChat決済開発トランザクション通知サンプルコードの詳細説明

高洛峰
高洛峰オリジナル
2017-03-27 14:04:162349ブラウズ

この記事では主に、JS API を使用して支払いを行うときにトランザクション通知を取得する方法を紹介し、コード例を提供します。

1. トランザクション通知

ユーザーが正常に完了した後。支払い、WeChat バックグラウンドで販売者サーバー (notify_url) に支払い結果を通知 (POST) します。販売者は、notify_url の通知結果を使用して、パーソナライズされたページを表示できます。

バックグラウンド通知を操作する場合、WeChat が販売者から受信した応答が成功しなかったり、タイムアウトになった場合でも、WeChat は特定の戦略 (30 回に 8 回など) を通じて通知を定期的に再開始します。ただし、WeChat は通知が最終的に成功することを保証しません。

バックグラウンド通知は、POST メカニズムを使用して、リクエスト内の notify_url を通じて実行されます。

同時にpostDataにxmlデータも含まれます。

2.トランザクション結果の取得と応答

公式ドキュメントに従い、結果を通知するためのnotice.phpを作成します。

プログラムの内容は次のとおりです:

<?php foreach ($_GET as $key=>$value) 
{
 logger("Key: $key; Value: $value");
}
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
logger($postStr);

if (isset($_GET)){
 echo "success";
}

//日志记录
function logger($log_content)
{
 $max_size = 100000;
 $log_filename = "log.xml";
 if(file_exists($log_filename) and (abs(filesize($log_filename)) > $max_size)){unlink($log_filename);}
 file_put_contents($log_filename, date('H:i:s')." ".$log_content."\r\n", FILE_APPEND);
}
?>

上記のプログラムの機能は次のとおりです:

投稿のURL通知を取得し、GET変数の形式で投稿のXMLデータパケットを取得します

成功メッセージsuccessを返す

JS API決済の通知URLにnotice.phpのフルパスを入れる。

$wxPayHelper->setParameter("notify_url", http://www.doucube.com/wxpay/notice.php);

このようにして、トランザクションが完了すると、URL が通知され、ログ ファイルに記録されます。

取得された GET 変数と XML は次のとおりです。 WeChat ウィンドウ中将は OK ポップアップ ウィンドウを受け取ります

上記は WeChat 決済開発トランザクション通知に関する情報の収集です、ご支援ありがとうございます! WeChat決済開発トランザクション通知サンプルコードの詳細説明

以上がWeChat決済開発トランザクション通知サンプルコードの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。