Paketimport:
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >wepay-core</ artifactId >
< version >1.3.2</ version >
</ dependency >
Abhängige Pakete. Achten Sie bei der Einführung des Projekts darauf, ob Sie Folgendes ausschließen müssen:
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >common</ artifactId >
< version >1.1.2</ version >
</ dependency >
Grundlegende Verwendung:
Wepay wepay = WepayBuilder
. newBuilder ( appId , appKey , mchId )
. config1 (...) // 其他可选配置
...
. build ();
wepay . module (). api ();
Implementierte Komponenten:
pay()
;refund()
;order()
;notify()
;bill()
.API-Dokumentation hier.
Über das Testen :
Die Testfälle umfassen einige grundlegende Tests, die eine gewisse Konfiguration erfordern:
// 在test/reources目录中配置dev.properties
// 包括appId(APP ID), appKey(支付密钥), mchId(商户号)
Properties props = new Properties ();
InputStream in = Object . class . getResourceAsStream ( "/dev.properties" );
props . load ( in );
in . close ();
// 配置证书,退款需要证书,不配置可测试除退款的接口
Path path = Paths . get ( "/path/to/your_cert.p12" );
byte [] data = Files . readAllBytes ( path );
wepay = WepayBuilder . newBuilder (
props . getProperty ( "appId" ),
props . getProperty ( "appKey" ),
props . getProperty ( "mchId" ))
. certPasswd ( props . getProperty ( "mchId" ))
. certs ( data )
. build ();
Das wepay-demo-Projekt ist ein ausführbares Webprojekt, das zum Testen geeignet ist. Sie können es gemäß den folgenden Schritten testen. Kopieren Sie app-example.properties
app.properties
wepay-demo und konfigurieren Sie sie entsprechend:
# 微信app id
appId =
# 微信支付key
appKey =
# 商户号
mchId =
# 支付通知url
payNotifyUrl = $ { your_domain } / notifies / paid
Hinweis : ** payNotifyUrl
** sollte als Adresse konfiguriert werden, die der WeChat-Server aus dem externen Netzwerk aufrufen kann. Für lokale Tests wird empfohlen, das ngrok-Tool für die lokale und externe Netzwerkzuordnung zu verwenden.
Gehen Sie in das Stammverzeichnis von wepay-demo und führen Sie den folgenden Befehl aus:
mvn clean jetty:run -Dmaven.test.skip -Djetty.port={自定义端口号}
Auf die dynamische QR-Code-Zahlung kann zugegriffen werden ( nachdem die Anfrage normal ist, wird das von Liantu generierte QR-Code-Bild angezeigt. Nachdem die Zahlung durch Scannen mit WeChat erfolgreich war, werden die entsprechenden Notifies
im Hintergrund empfangen ):
http://localhost:{port}/pays/qrpay ? orderNumber={自定义订单号}
Eine Rückerstattung ist möglich ( nach erfolgreicher Einreichung wird eine Nachricht auf WeChat benachrichtigt ):
http://localhost:{port}/refunds/apply ? orderNumber={商户订单号} ` ` `
Zugehörige Dokumente:
Historische Version:
1.0.0:
1.1.0:
1.1.1:
1.1.2:
1.2.2:
1.2.3:
1.2.4:
1.2.5:
1.3.0:
1.3.1:
goods_tag
“.1.3.2:
clientIp
auf clientIp
.Zugehörige Komponenten:
Alipay:
WeChat: