程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 微信支付開發告警通知實例

微信支付開發告警通知實例

編輯:PHP綜合

一、告警通知

為了及時通知商戶異常,提高商戶在微信平台的服務質量。微信後台會向商戶推送告警通知,包括發貨延遲、調用失敗、通知失敗等情況,通知的地址是商戶在申請支付時填寫的告警通知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>

二、程序接收

在微信支付開發(1) 微信支付URL配置中已提到,設置了告警通知url為

http://www.doucube.com/wxpay/alarm.php

現在就是alarm.php函數的實現了,仿照微信基礎接口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);
}

以上就是對微信支付開發告警通知的資料整理,對微信支付開發的朋友可以參考下,謝謝支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved