微信支付開發 c# SDK JSAPI支付開發的流程和微信大坑

微信支付開發流程php

1. 開通微信支付功能html

省略api

2. 下載微信的C#版的微信SDK安全

下載鏈接:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1服務器

各個版本的都有,惋惜咱最熟悉C#微信

個人下載時間是2016-02-28日,因此全部的流程都是基於這個版本的SDK。學習

 

3. 配置各類參數測試

首先在微信支付的開發配置中配置發起支付的路徑以下:微信支付

image

代碼的solution中找到lib的config.cs文件,以下圖,全部的參數都在這裏,這裏配置成功了,支付也就成功。調試

image

 

細說一下這個類文件中的幾個參數

image

相信這幾個參數你們都很熟悉,

APPID: 微信公衆號的APPID,有點開發經驗的都知道,

APPSECRET:公衆賬號secert,

MCHID:商戶號(必須配置), 這個在申請微信支付的郵箱中有,

KEY:商戶支付密鑰,參考開戶郵件設置,相對來說這個是最複雜的,

登陸微信支付商戶平臺後,點擊API安全,以下圖,按照步驟設置便可,設置以後填寫進來

image

微信證書,在上面的頁面中按照步驟下載證書,替換你代碼中文件中的cert

image

同時在服務器上雙擊這個證書,安裝在服務器中(也不知道是否是必要的步驟)。

代碼中的LOG 默認是不記錄的,若是要打開,把LOG_LEVENL 設置爲>0的。

image

 

設置微信JSAPI安全域名

因爲這個demo代碼中還使用了微信的受權,因此須要在微信的服務號的接口權限中設置安全域名,也就是微信支付的域名

 

image

 

部署服務器測試

把代碼複製到服務器上,直接訪問demo頁面以下

image

按理來說 如今的支付已經成功了。

微信大坑

可是,在進入JSAPI支付時,不管如何也不成功,可是也不報任何錯誤,最近通過調試發現,JsApiPayPage.aspx頁面中的支付按鈕不正確,目的是調用JS callpay 方法,可是寫的是一個服務器端控件,以下圖中的紅色部分,是官方代碼。

問題知道了,解決就很容易了,直接用一個HTML控件調用callpay方法便可,下圖中藍色代碼。

 

image

 

 

總結

整理上來說,微信提供的demo和SDK已經很簡單了,可是就是那麼一點點的錯誤會浪費新手很長時間不知道如何解決(也許是我笨)。但願微信官方團隊少出現點類是的錯誤吧。關於微信技術的任何問題能夠加QQ羣 497370827(2羣)討論。共學習,共進步。

 

教程導航:

微信開放平臺 公衆號第三方平臺開發 教程一 平臺介紹

微信開放平臺 公衆號第三方平臺開發 教程二 建立公衆號第三方平臺

微信開放平臺 公衆號第三方平臺開發 教程三 一鍵登陸受權給第三方平臺

微信開放平臺 公衆號第三方平臺開發 教程四 代公衆號調用接口的SDK和demo

微信開放平臺 公衆號第三方平臺開發 教程五 代公衆號發起網頁受權源碼

相關文章
相關標籤/搜索