wepay
1.0.0
パッケージのインポート:
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >wepay-core</ artifactId >
< version >1.3.2</ version >
</ dependency >
依存パッケージ。プロジェクトを導入するときに除外する必要があるかどうかに注意してください。
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >common</ artifactId >
< version >1.1.2</ version >
</ dependency >
基本的な使い方:
Wepay wepay = WepayBuilder
. newBuilder ( appId , appKey , mchId )
. config1 (...) // 其他可选配置
...
. build ();
wepay . module (). api ();
実装されたコンポーネント:
pay()
;refund()
;order()
;notify()
;bill()
。APIドキュメントはこちら。
テストについて:
テスト ケースには、いくつかの構成を必要とするいくつかの基本的なテストが含まれています。
// 在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 ();
wepay-demo プロジェクトは、テストに便利な実行可能な Web プロジェクトです。wepay-demo のapp-example.properties
app.properties
にコピーし、それに応じて設定します。
# 微信app id
appId =
# 微信支付key
appKey =
# 商户号
mchId =
# 支付通知url
payNotifyUrl = $ { your_domain } / notifies / paid
注: ** payNotifyUrl
** は、WeChat サーバーが外部ネットワークから呼び出すことができるアドレスとして構成する必要があります。ローカル テストの場合は、ローカル ネットワークと外部ネットワークのマッピングに ngrok ツールを使用することをお勧めします。
wepay-demo ルート ディレクトリに移動し、次のコマンドを実行します。
mvn clean jetty:run -Dmaven.test.skip -Djetty.port={自定义端口号}
動的 QR コード支払いにアクセスできます (リクエストが正常に完了すると、Liantu によって生成された QR コード画像が表示されます。WeChat でスキャンして支払いが成功すると、対応する通知Notifies
バックグラウンドで受信されます)。
http://localhost:{port}/pays/qrpay ? orderNumber={自定义订单号}
払い戻しは可能です (送信が成功すると、WeChat でメッセージが通知されます):
http://localhost:{port}/refunds/apply ? orderNumber={商户订单号} ` ` `
関連文書:
歴史的バージョン:
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
フィールドをclientIp
に修正します。関連コンポーネント:
アリペイ:
ウィーチャット: