这篇文章将为大家详细讲解有关微信支付中如何获得告警通知,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
一、告警通知
为了及时通知商户异常,提高商户在微信平台的服务质量。微信后台会向商户推送告警通知,包括发货延迟、调用失败、通知失败等情况,通知的地址是商户在申请支付时填写的告警通知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);
}
关于“微信支付中如何获得告警通知”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。