這篇文章主要為大家展示了“微信支付開(kāi)發(fā)交易通知的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“微信支付開(kāi)發(fā)交易通知的示例分析”這篇文章吧。
創(chuàng)新互聯(lián)專(zhuān)注于企業(yè)成都營(yíng)銷(xiāo)網(wǎng)站建設(shè)、網(wǎng)站重做改版、錦屏網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5建站、電子商務(wù)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為錦屏等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。一、交易通知
用戶(hù)在成功完成支付后,微信后臺(tái)通知(POST)商戶(hù)服務(wù)器(notify_url)支付結(jié)果。商戶(hù)可以使用notify_url的通知結(jié)果進(jìn)行個(gè)性化頁(yè)面的展示。
對(duì)后臺(tái)通知交互時(shí),如果微信收到商戶(hù)的應(yīng)答不是success或超時(shí),微信不為通知失敗,微信會(huì)通過(guò)一定的策略(如30分鐘共8次)定期重新發(fā)起通知,盡可能提高通知的成功率,但微信不保證通知最終能成功。
后臺(tái)通知通過(guò)請(qǐng)求中的 notify_url 迚行,采用 POST 機(jī)制。
同時(shí),在postData中還將包含xml數(shù)據(jù)。
二、交易結(jié)果獲取與響應(yīng)
根據(jù)官方文檔,創(chuàng)建notice.php用于通知結(jié)果。
程序內(nèi)容如下所示:
<?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);
}
?>上述程序的作用是:
獲取post到url的通知,他們以GET變量形式
獲取post的XML數(shù)據(jù)包
返回成功消息 success
將notice.php的完整路徑放入JS API支付的notice url中。
$wxPayHelper->setParameter("notify_url", http://www.doucube.com/wxpay/notice.php);這樣當(dāng)交易完成后,該url將收到通知,并記錄在日志文件中,我們的測(cè)試如下所示:
獲得的GET變量及XML如下所示:
Key: bank_billno; Value: 201405273540085997 Key: bank_type; Value: 2011 Key: discount; Value: 0 Key: fee_type; Value: 1 Key: input_charset; Value: GBK Key: notify_id; Value: Gx8ov6tT6_yaARrtKG6RFZ4KiVtKqVnJzvulFlteJ3dhBg38iRtKs0pTXXfgh8WnH15mIhG6j65ggbzzYguh2mutG3B5oHsK Key: out_trade_no; Value: JfuKdiBig4zZnE4n Key: partner; Value: 1234567890 Key: product_fee; Value: 1 Key: sign; Value: 08876C4A9F7A36A9EA972C211C122362 Key: sign_type; Value: MD5 Key: time_end; Value: 20140527194139 Key: total_fee; Value: 1 Key: trade_mode; Value: 1 Key: trade_state; Value: 0 Key: transaction_id; Value: 1218614901201405273313473135 Key: transport_fee; Value: 0 <xml><OpenId><![CDATA[o0pk9uIVnlY-fJkzFKEbQ6LJ4cFc]]></OpenId> <AppId><![CDATA[wx0000000000000000]]></AppId> <IsSubscribe>1</IsSubscribe> <TimeStamp>1401190899</TimeStamp> <NonceStr><![CDATA[iOb2flJ0ILFAmBqJ]]></NonceStr> <AppSignature><![CDATA[66678894aae680ba140e18e66d1295dfadabd9ab]]></AppSignature> <SignMethod><![CDATA[sha1]]></SignMethod> </xml>
而在微信窗口中將收到OK的彈出窗

以上是“微信支付開(kāi)發(fā)交易通知的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
本文題目:微信支付開(kāi)發(fā)交易通知的示例分析-創(chuàng)新互聯(lián)
URL標(biāo)題:http://www.jbt999.com/article32/ccdisc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、品牌網(wǎng)站制作、ChatGPT、網(wǎng)站排名、企業(yè)建站、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容