【CSDN博客遷移】支付寶——手機網站支付接口研究

一 API版本說明

下面是官網的說明:


api版本.png

做個簡單說明: API1.0接口主要用于網站(包括手機端的網站)的調用;API2.0主要用于手機app的調用。根據我們做的手機端網站的接口開發,主要使用API1.0接口。
API1.0接口的請求參數如下:

api請求參數.png

根據上面的請求參數做開發前的準備工作。

二 開發準備工作

2.1 首先需要注冊支付寶企業賬戶

詳細步驟參考支付寶企業版官網注冊。

2.2 PID(partner_id的簡稱),合作伙伴身份

由于我沒有注冊企業賬戶,就用一下官網的截圖

pid.png

2.3 密鑰(簽名)

由于支付寶接口的開發涉及到RMB,所以在請求前后,都要加密,合作伙伴身份的密匙主要有三種方式簽名(MD5、RSA、DSA),api1.0版本只支持MD5、RSA。但由于無線快捷支付只支持RSA,所以手機網站支付簽名只能采用RSA。
RSA簽名由公匙和私匙組成,公匙是開放的,私匙一定要保存好。

2.3.1商戶(開發者)的RSA簽名生成

https://doc.open.alipay.com/doc2/detail.htm?spm=0.0.0.0.gf8Q4m&treeId=115&articleId=103242&docType=1)詳細參考生成簽名的網站。
(1)下載并安裝OpenSSL工具

ssl安裝.png

(2)java開發時注意事項


RAS鑰匙.png

2.4上傳商戶(開發者)密匙

開發的產品要和支付寶交互,吧商戶自己的公匙上傳到支付寶平臺,使支付寶平臺對請求的訂單解密。和上傳本地的公匙到github上面的原理一樣,參考下面的網站
https://doc.open.alipay.com/doc2/detail.htm?spm=0.0.0.0.95uDlm&treeId=58&articleId=103578&docType=1

上傳公匙.png

三 手機網站支付交互流程

3.1 手機網站支付流程

手機網站支付流程圖.png

(1)商戶(開發者產品)根據上文提到的請求參數構造數據集合
(2)把構造完成的數據集合,通過頁面鏈接跳轉的方式傳遞給支付寶。注意這里在發送之前用到我們前面提到RSA,用商戶自己的私匙去加密。
(3)支付寶平臺首先對得到的數據集合,用商戶上傳的公匙去解密,看有沒有人攔截。然后進行數據處理,吧處理完成的數據用支付寶的私匙去加密。
(4)返回處理的結果數據。(官網給了兩種方法,如下圖)

支付處理結果.png

(5)對獲取的返回結果數據進行處理

3.2 退款流程(后續研究)

對通過即時到賬等接口付款完成的交易進行部分或全部的退還。商戶(開發者賬號)需輸入支付密碼。
即時到賬有密退款網址如下:
https://doc.open.alipay.com/doc2/detail.htm?spm=0.0.0.0.99u19c&treeId=66&articleId=103571&docType=1
Demo下載地址:
https://doc.open.alipay.com/doc2/detail?treeId=54&articleId=103419&docType=1

退款下載地址.png

四 手機網站支付官網Demo

4.1 Demo下載及簡單說明

我們對照支付寶提供的手機網站支付Demo,來做個簡單說明
(1)手機網站支付下載頁面:
https://doc.open.alipay.com/doc2/detail?treeId=54&articleId=103419&docType=1

手機網頁支付demo下載.png

(2)demo提供了三個版本php、java、c#、asp,我么選用java版本

demo版本.png

4.2 代碼分析

4.2.1 請求參數(和我們前面提到的一樣)

請求參數.png

4.2.2 簽名文件

果然是RSA簽名


簽名文件.png

4.2.3 主要功能

支付核心模塊.png

下面可證明手機網址支付使用的是API1.0版本


支付請求api版本.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 之前由于項目需要,我所負責的產品有接入支付寶,今天抽出時間整理了出了與支付寶對接的流程。文章大部分內容都是直接引用...
    耳東叔閱讀 5,950評論 0 6
  • 支付寶集成過程詳解——運行DEMO 前言,夢想是需要堅持的,在路上,一路前行。加油。 這兩天軟件需要集成支付寶了,...
    改昵稱已被占用閱讀 19,107評論 2 39
  • 此項目已開源 趕快來圍觀 Start支持下吧 【客戶端開源地址-JPay】【服務端端開源地址-在com.javen...
    LucasAdam閱讀 1,975評論 0 3
  • iOS支付 iOS支付分為兩類,第三方支付和應用內支付(內購)。 第三方支付包括:支付寶支付、微信支付、銀聯支付、...
    請輸入賬號名閱讀 6,288評論 3 22
  • iOS支付 iOS支付分為兩類,第三方支付和應用內支付(內購)。 第三方支付包括:支付寶支付、微信支付、銀聯支付、...
    sillen閱讀 1,413評論 0 1