寶付揭秘支付JAVE程式碼

一流湧進發表於2019-09-16

開發前的準備工作

  • 配置應用閘道器
  • 應用閘道器裡面填寫的值就是商戶後臺的非同步回撥地址.也就是在支付寶付完款之後,由支付寶呼叫商戶,便於商戶驗證訂單各資訊和更新訂單狀態
  • 授權回撥地址
  • 授權回撥地址的值是指使用者在使用支付寶付款成功後從支付寶跳轉到商戶自己的頁面.
  • 介面加密方式
  • 這個用於商戶的簽名加密,有 RSA2和RSA兩種演算法型別,預設是RSA2.開發人員可以使用支付寶提供的生成方式自己生成,然後將 公鑰上傳到支付寶開放平臺.這裡提供支付寶生成金鑰的 教程和下載地址
  • 現在提供一張的截圖,顯示配置的位置.到達方式:螞蟻金服開放文件—> 右上角賬戶中的 賬號管理—> 開發者中心—>我的應用(應用) —> 選擇自己將要配置的 應用名稱點選右邊的檢視—> 應用資訊(就是截圖看到的頁面了)

支付流程:

  • 前端呼叫商戶後臺支付介面
  • 商戶後臺支付介面進行一些必要的業務邏輯上的處理之後呼叫支付寶的支付介面(原始支付API).需要的引數詳見支付寶支付介面的引數說明.支付寶會返回一個form表單.商戶後臺支付介面將表單返回給前臺.
  • 前臺將表單提交給支付寶,喚起支付寶客戶端進行支付.
  • 支付成功後支付寶會根據原始支付API中傳入的非同步通知地址notify_url,透過POST請求的方式將支付結果作為引數通知到商戶後臺系統.
  • 商戶後臺系統在接到支付寶的非同步通知後要在驗證自己本身業務邏輯之外嚴格驗證通知資料的正確性.
  • 商戶需要驗證該通知資料中的out_trade_no是否為商戶系統中建立的訂單號
  • 判斷total_amount是否確實為該訂單的實際金額(即商戶訂單建立時的金額)
  • 校驗通知中的seller_id(或者seller_email) 是否為out_trade_no這筆單據的對應的操作方(有的時候,一個商戶可能有多個seller_id/seller_email)
  • 驗證app_id是否為該商戶本身
  • 上述1、2、3、4有任何一個驗證不透過,則表明本次通知是異常通知,務必忽略.詳情參見 非同步返回的驗籤
  • 判斷沒有任何錯誤,列印success.否則支付寶伺服器會不斷重發通知,直至超過24小時22分鐘.


開發需要準備的物料

pom.xml新增支付寶依賴

[java] view plain copy

  1. <dependency>
  2. <groupId>commons-logging</groupId>
  3. <artifactId>commons-logging</artifactId>
  4. <version>1.1.1</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>com.alipay</groupId>
  8. <artifactId>alipay-sdk</artifactId>
  9. <version>java20170307171631</version>
  10. </dependency>


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69905323/viewspace-2657121/,如需轉載,請註明出處,否則將追究法律責任。

相關文章