這是我的第一篇博客,注冊博客園多年,但是今天剛開通博客功能,目的是想記錄一下這兩天研究AliPay,電腦網站支付,在網上找到的知識點很少,也可能大家都沒遇到這個問題,所以我想寫下來共以后用得着的同學參考。下面進入正題:
首先在沙箱中創建應用,支付寶會幫你生成一個APPID(待會會作為參數傳遞到沙箱)和其他一些商戶信息和應用信息。支付寶網關也是自動生成的,也是固定的。
接下來是填寫應用公鑰,將鼠標懸浮在可以查看生成方法。生成的時候注意選擇PKCS1格式,這個是非JAVA適用的,密碼長度官方建議使用2048。把商戶應用公鑰復制到上面的圖片中的設置應用公鑰,注意,每次點擊生成密鑰生成的都不一樣,傳參數的時候要和你設置到沙箱中的公鑰一致。如果忘記了可以查看保存在本地的文件,每次生成都保存在本地。
至於下邊的RSA密鑰,應用網關,等等都可以不設置。
設置好了沙箱中的參數,接下來就是寫代碼了。首先下載官方的SDK,打開項目,新添加一個網站項目,並引用SDK的項目。讓我搗鼓了半天的東西就是在下邊寫參數的時候,其實就那么幾個參數,就是搞不定。app_id, merchant_private_key(商戶應用私鑰),alipay_public_key(支付寶公鑰,沙箱應用中查看),一定要對應起來。
IAopClient client = new DefaultAopClient("https://openapi.alipaydev.com/gateway.do", app_id, merchant_private_key, "json", "1.0", "RSA2", alipay_public_key, "utf-8", false); AlipayTradePagePayRequest request = new AlipayTradePagePayRequest(); request.BizContent = "{" + " \"body\":\"Iphone6 16G\"," + " \"subject\":\"Iphone6 16G\"," + " \"out_trade_no\":\"20150320010101009\"," + " \"total_amount\":88.88," + " \"product_code\":\"FAST_INSTANT_TRADE_PAY\"" + " }"; AlipayTradePagePayResponse response = client.pageExecute(request); return response.Body;
小功告成,運行一下。
支付的時候使用沙箱中給你生成的沙箱賬戶哦!
到這里就總結完了。然后我要吐槽一下支付寶,你的官方Demo有Java的也有PHP的,就是沒.Net的是什么意思。