C#支付寶當面付掃碼支付開發,包括demo程式碼的修改和螞蟻金服開發平臺的配置
支付寶開發前配置:
第一步登陸螞蟻金服開放平臺服:支付寶掃碼登陸
登入之後看到一下介面,找到自主研發選項,點選開始入駐
配置自己的個人資訊:
到此為止我們所有應該做的配置基本上就完成了,但是我們要注意幾個概念:
支付閘道器:支付閘道器(Payment Gateway)是銀行金融網路系統和Internet網路之間的介面。主要面對網上支付。
應用閘道器:接收支付寶非同步通知,例如口碑開店中,需要配置此閘道器來接收
授權回撥地址:第三方授權或是使用者資訊授權使用的。
在生活號裡不用去配置應用閘道器以及授權回撥地址,電腦網站,手機網站。app
特別提醒!!!:只有口碑開店,生活號用到應用閘道器。只有第三方應用授權和使用者資訊授權用到授權回撥地址
沙箱配置:
沙箱作用:就是在你的支付寶正式開發的應用還沒有稽核通過時,支付寶為我們 提供的一個測試平臺。
APPID:就是商家註冊螞蟻金服,進行開發,一個標識,它是用和當前開發者註冊的開發賬戶 是相繫結的
支付寶閘道器:這個不用我們更改,他是支付寶自動給我們提供的,唯一我們要記得的是,沙箱版的支付寶閘道器和正式我們開發的支付寶閘道器是不一樣的
應用公匙:沙箱版的,如果你沒有配置過支付寶就會提供你一個下載生成公匙的工具。到正式版的,下面我會在講
RSA2(SHA256)金鑰(推薦)與RSA(SHA1)金鑰區別:前者是新版本的一個,後者是舊版本的,一般我們就是用新版本的
商戶UID:這個就是並不是我們開發者註冊的商戶帶有id,這個是我們在開發中與支付寶合作的pid(就是合作伙伴的意思),在沒有正式開發時,我們程式碼裡的配置就是要用UID,正式開發稽核通過的時候就會有一個真正的pid供我們使用
沙箱 賬號:
裡面提供了在測試時我們需要進行付款的一些支付賬戶和密碼
稽核通過時資訊的使用:(就只有一點小差別)
app id:需要我們更改,我們在沙箱裡的APPID與正式稽核通過的APPID是不一樣的
沙箱版的APPID:
正式稽核通過的APPID:
公匙與私匙:正式開發中,支付寶也會提供我們一個生成公匙與私匙的生成工具,(注意:只能開啟一次,操作不當重新下載,再生成),並且正式開發需要手機驗證
PID:
沙箱版的pid(UID):
稽核通過的pid:
現在我們所有的關於螞蟻金服上的基本配置已經完成了,接下來看demo(是從螞蟻金服開發者平臺下載的:網址:https://openhome.alipay.com/developmentDocument.htm),對於我們掃碼支付的話,就選擇當面付,裡面關於這方面開發詳細文件,初期開發者可以仔細看看,我們注重是要下載demo
下載好demo後就開始進入我們的程式碼:(實際上程式碼裡需要我們做很少,只需更改配置節裡的就行)
在沙箱測試的時候就直接把我們的沙箱裡的各種與之對應的資料填進去就行了。
config裡面的支付寶公鑰與開發者公鑰是一樣的,開發者私鑰就是我們生成就是密匙裡的私匙。
APPID:沙箱版的就是(APPID),正式的就是稽核通過的APPID,
PID:沙箱版的就是(UID)正式就是稽核通過的PID,
配置好這些程式碼就可以使用了:下面展示執行效果:
整個支付寶,掃碼開發就完成了
但是,我們如果專案中我們手動輸入,引數是進行傳過來的怎麼辦呢,這時我們只需要找到precreate.cs這個類,找到下圖劃線部分,precreate.aspx裡面的程式碼註釋掉,只留個img標籤用來展示二維碼,把precreate.cs裡的 Alipay_RSA_Submit程式碼全部移到Page_Load裡面,然後把箭頭的改為Request.QueryString進行接受就行。
本人剛介入支付寶開發,有不妥之處,請大神指教