提供兩個測試版本,Java於PHP,都是經過測試成功后上傳,功能都沒有問題。代碼邏輯有困惑時可以參考開發文檔,上面很清楚。
Java版:
1. 在開通微信支付的公眾號下訪問 htpp://服務器地址/mainServlet
2. 修改MainServlet.java和TopayServlet.java 里面的商戶參數,授權返回地址和notify_url部分即可。
3. 代碼是別人的勞動成果,經自己稍微修改后測試成功,demo並沒有十分的簡化,大家可以做一個參考吧。如果出現簽名失敗,仔細檢查下自己填寫的appid和partnerkey是否正確。
4. 請注意:微信支付成功后的通知的url為notifyServlet,sb是返回的xml
5.最后祝大家都通過微信支付的測試。
PHP版:
1.【基本信息設置】
商戶向微信提交企業以及銀行賬戶資料,商戶功能審核通過后,可以獲得帳戶基本信息,找到本例程的配置文件「WxPay.pub.config.php」,配置好如下信息:
appId:微信公眾號身份的唯一標識。審核通過后,在微信發送的郵件中查看。
Mchid:受理商ID,身份標識
Key:商戶支付密鑰Key。審核通過后,在微信發送的郵件中查看。
Appsecret:JSAPI接口中獲取openid,審核后在公眾平台開啟開發模式后可查看。
2.【native支付鏈接設置】
native支付中,用戶掃碼后調微信會將productid和用戶openid發送到商戶設置的鏈接上,確保該鏈接與實際服務路徑一致。本例程的響應服務為「./demo/native_call.php」
3.【JSAPI路徑設置】
通過JSAPI發起支付的代碼應該放置在商戶設置的「支付授權目錄」中。
並找到本例程的配置文件「WxPay.pub.config.php」,配置正確的路徑。
4.【證書路徑設置】
找到本例程的配置文件「WxPay.pub.config.php」,配置證書路徑。
5.【異步通知url設置】
找到本例程的配置文件「WxPay.pub.config.php」,配置異步通知url。
6.【必須開啟curl服務】
使用Crul需要修改服務器中php.ini文件的設置,找到php_curl.dll去掉前面的";"即可。
7.【設置curl超時時間】
本例程通過curl使用HTTP POST方法,此處可修改其超時時間,默認為30秒。找到本例程的配置文件「WxPay.pub.config.php」,配置curl超時時間。
代碼文件結構
===========================================
wxpay_php
|-- README.txt---------------------使用說明文本
|-- WxPayHelper--------------------微信支付類庫及常用文件
| |-- SDKRuntimeException.php----異常處理類
| |-- WxPay.pub.config.php-----------商戶配置文件
| `-- WxPayPubHelper.php------------微信支付類庫
|-- demo---------------------------例程
| |-- js_api_call.php------------JSAPI支付例程
| |-- native_call_qrcode.php-----native支付靜態鏈接二維碼例程
| |-- native_call.php------------native支付后台響應例程
| |-- native_call.log------------native支付后台響應日志
| |-- native_dynamic_qrcode.php--native支付動態鏈接二維碼例程
| |-- notify_url.php-------------支付結果異步通知例程
| |-- notify_url.log-------------支付結果異步通知日志
| |-- order_query.php------------訂單查詢例程
| |-- refund.php-----------------退款例程
| |-- download_bill.php----------對賬單例程
| |-- refund_query.php-----------退款查詢例程
| |-- log_.php-------------------日志類
| `-- qrcode.js------------------二維碼生成工具
`-- index.php
http://www.9miao.com/thread-57245-1-1.html