Heim  >  Artikel  >  WeChat-Applet  >  Die WeChat-Zahlungsentwicklung wird im gesamten Netzwerk veröffentlicht

Die WeChat-Zahlungsentwicklung wird im gesamten Netzwerk veröffentlicht

高洛峰
高洛峰Original
2017-02-28 09:53:541452Durchsuche

In diesem Tutorial zur Entwicklung der öffentlichen WeChat-Plattform stellen wir vor, wie die netzwerkweite Veröffentlichungsfunktion der WeChat-Zahlung entwickelt und implementiert wird.

Netzwerkweite Freigabe bezieht sich auf die Erkennung und Freigabe der Rechteschutzfunktion, der Alarmschnittstelle und der Lieferschnittstelle im letzten Schritt des WeChat-Zahlungs-Backends.

Die WeChat-Zahlungsentwicklung wird im gesamten Netzwerk veröffentlicht

Dieser Artikel ist in die folgenden drei Teile unterteilt:

Einstellung des WeChat-Zahlungsverzeichnisses

Anpassung der Versandschnittstelle

Anpassung der Rechteschutzschnittstelle und der Alarmschnittstelle


1. Einstellung des WeChat-Zahlungsverzeichnisses

Die Einstellung der WeChat-Zahlungs-URL steht in engem Zusammenhang mit der Anpassung der WeChat-Zahlung. Die verschiedenen URL-Einstellungen, die wir hier verwenden, sind wie folgt:
Zahlungstest-URL: http://www.fangbei.org/wxpay/jsapi/index.php
Transaktionsbenachrichtigungs-URL: http://www.fangbei. org /wxpay/notify/index.php
Rechte-Benachrichtigungs-URL: http://www.fangbei.org/wxpay/rights/index.php
Alarm-Benachrichtigungs-URL: http://www.fangbei.org/ wxpay /alarm/index.php

2. Anpassung der Versandschnittstelle

Vor der Anpassung der Versandschnittstelle muss der Benutzer vor dem Senden eine Transaktion durchführen, also zuerst Schließen Sie eine JSAPI-Zahlung ab. Der Code lautet wie folgt:

<?php
include_once("WxPayHelper.php");
$commonUtil = new CommonUtil();
$wxPayHelper = new WxPayHelper();
$wxPayHelper->setParameter("bank_type", "WX");
$wxPayHelper->setParameter("body", "方倍微信支付测试");
$wxPayHelper->setParameter("partner", PARTNERID);
$wxPayHelper->setParameter("out_trade_no", $commonUtil->create_noncestr());
$wxPayHelper->setParameter("total_fee", "1");
$wxPayHelper->setParameter("fee_type", "1");
$wxPayHelper->setParameter("notify_url", "http://www.fangbei.org/wxpay/notify/index.php");
$wxPayHelper->setParameter("spbill_create_ip", $_SERVER[&#39;REMOTE_ADDR&#39;]);
$wxPayHelper->setParameter("input_charset", "GBK");
$biz_package=$wxPayHelper->create_biz_package();
?>
<html>
<meta name="viewport" content="width=device-width,height=device-height,inital-scale=1.0,maximum-scale=1.0,user-scalable=no;">
<script language="javascript">
    function callpay()
    {
        WeixinJSBridge.invoke(&#39;getBrandWCPayRequest&#39;,<?php echo $biz_package;?>,function(res){
        WeixinJSBridge.log(res.err_msg);
        alert(res.err_code+res.err_desc+res.err_msg);
        });
    }
</script>
<body>
    <button type="button" onclick="callpay()">方倍微信支付测试</button>
</body>
</html>

Wenn die obige Transaktion abgeschlossen ist, wird die URL wie folgt zur Transaktionsbenachrichtigungsschnittstelle mit Parametern zurückgerufen

http://www.fangbei.org/wxpay/notify/index.php?discount=0&fee_type=1&input_charset=GBK&notify_id=aCi-cg4m1nr2bbg-De-MK6hQum8XVsw4mYfYnD5umAiEm_J6P_MalPvOisl2NJdurzTW-TJ9IPcnKmZm5TpKjrc8bXT6PEe0&out_trade_no=5DlIL2s5DGR8147c&partner=1219951701&product_fee=1&sign=A7AEF7AE3B70C54C3C0FF642DD2E2004&sign_type=MD5&time_end=20140808185647&total_fee=1&trade_mode=1&trade_state=0&transaction_id=1219951701201408083366666764&transport_fee=0

Gleichzeitig wird der POST gesendet. Die folgenden XML-Daten

<xml>
<OpenId><![CDATA[ocIywt7h42MwHxXx23sJdBpBV7Q8]]></OpenId>
<AppId><![CDATA[wxa8826d0c0c0b6d6a]]></AppId>
<IsSubscribe>1</IsSubscribe>
<TimeStamp>1407495408</TimeStamp>
<NonceStr><![CDATA[D6iywdqlcdUj8nDQ]]></NonceStr>
<AppSignature><![CDATA[a99a3cb4f5377dc30cca3f7b362412d7e468e0f4]]></AppSignature>
<SignMethod><![CDATA[sha1]]></SignMethod>
</xml>

entfernen das

transaction_id=1219951701201408083366666764
out_trade_no=5DlIL2s5DGR8147c

in der URL und das

<OpenId><![CDATA[ocIywt7h42MwHxXx23sJdBpBV7Q8]]></OpenId>

in der XML und füllt die oben genannten 3 Parameterwerte in die Versandschnittstelle, der Code kann sich auf WeChat Pay Development Shipping Notification beziehen

Führen Sie ihn einmal aus und die Versandbenachrichtigungsschnittstelle wird angepasst.

3. Anpassung der Rechteschutzschnittstelle und der Alarmschnittstelle

Die Anpassung der Rechteschutzschnittstelle und der Alarmschnittstelle ist sehr einfach, da der Beamte nur benötigt um eine Antwort zu erhalten. Daher wird der Erfolg direkt in der entsprechenden index.php zurückgegeben. Der Code lautet wie folgt:

<?php
echo "success";
?>

4. Rendering

Nachdem die oben genannten drei Schnittstellen angepasst wurden, kann er freigegeben werden das gesamte Netzwerk. Der Effekt ist wie folgt

Die WeChat-Zahlungsentwicklung wird im gesamten Netzwerk veröffentlicht

Weitere Artikel zur WeChat-Zahlungsentwicklung, die im gesamten Netzwerk veröffentlicht werden, finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn