この記事では主にWeChat決済でアラーム通知を取得する方法を紹介し、参考用のサンプルコードを添付します。 WeChat Payを開発する方々のお役に立てれば幸いです。
1. アラーム通知
WeChatプラットフォーム上で加盟店に異常を速やかに通知し、加盟店のサービス品質を向上させるため。 WeChat バックエンドは、配送の遅延、通話の失敗、通知の失敗などを含むアラーム通知を販売者にプッシュします。通知アドレスは、支払いの申請時に販売者が入力したアラーム通知 URL であり、「パブリック プラットフォーム - サービス」で確認できます。 「サービスセンター」「加盟店機能」「加盟店基本情報」「アラーム通知URL」をご覧いただけます。警報通知を受け取った販売業者は、オンライン業務への影響を避けるために、警報通知に記載されている問題をできるだけ早く修復する必要があります。
アラーム通知URLで受信したpostDataには以下の形式のxmlデータも含まれます:
<xml> <AppId><![CDATA[wxf8b4f85f3a794e77]]></AppId> <ErrorType>1001</ErrorType> <Description><![CDATA[错识描述]]></Description> <AlarmContent><![CDATA[错误详情]]></AlarmContent> <TimeStamp>1393860740</TimeStamp> <AppSignature><![CDATA[f8164781a303f4d5a944a2dfc68411a8c7e4fbea]]></AppSignature> <SignMethod><![CDATA[sha1]]></SignMethod> </xml>
2. プログラム受信
次にalarm.php関数の実装です。 WeChat の基本インターフェイス SDK を模倣しています。詳細情報をデータベースまたは他のストレージに書き込みます
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); logger("错误类型:".$postObj->ErrorType."错识描述:".$postObj->Description."错误详情:".$postObj->AlarmContent); //日志记录 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); }
関連推奨事項:
以上がWeChat決済のアラーム通知例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。