1. 程式人生 > >支付寶支付之web篇

支付寶支付之web篇

在接入支付寶支付前,你需要先和支付寶簽約,web端要簽約即時支付,app端支付要簽約app支付。當然要是需要別的也可以根據需要簽約

支付寶支付相對微信支付接入要簡單一些,簽約成功後,你就可以在你的開發者賬戶中看到一個已上線的簽約專案,裡面會標明你可以使用那些功能,你也可以自己新增新的功能。

在接入web支付前,我們需要準備:

1.partner (pid在你的簽約頁面可以看到,你也可以通過qy.alipay.com登入,然後在我的商家服務》簽約管理中找到)

2.seller_email (商家郵箱,一般就是你的登入郵箱)

3.key (和pid在一起,需要驗證後才能看到)

4.在開發者平臺中的賬號資訊,你可以找到合作伙伴金鑰。(如果你有app支付需要在這裡上傳rsa公鑰,來得到支付寶公鑰。web支付是md5驗籤所以可以不用

5.支付寶的即時支付demo(https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.LW4YWX&treeId=193&articleId=103419&docType=1在這裡你可以找到你要的文件和demo,你需要下即時支付的demo

在拿到以上這些資訊後你就可以開始web編碼:

以下是我們本次所需要用到的檔案:


其中標紅的是我們自己的或者需要修改的檔案,其他的檔案我們只需把demo中的檔案拿出來就可以直接用。

下面讓我們看具體實現,首先我們需要配置一下AlipayConfig,支付寶的提示很清晰,基本按提示填入我們上邊說的準備好的東西即可。


在個是支付寶支付的入口方法,不在以上檔案中:

private void aliPay(String orderNum,String orderMsg,String allPrice){
		OrderBaseMsg obm = new OrderBaseMsg();
		obm.out_trade_no = orderNum;
		obm.subject = orderMsg;
		obm.total_fee = allPrice;
		obm.body = "";
		obm.show_url = "";
		try {
			obm.anti_phishing_key = AlipaySubmit.query_timestamp();
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (DocumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		obm.exter_invoke_ip = GetIP.getIpAddr(getRequest());
		Map<String, String> map = obm.orderMsg();
		String pay = AlipaySubmit.buildRequest(map, "get", "支付");
		setAttr("pay", pay);
		
	}

其中OrderBaseMsg是一個bean檔案,主要用來接收和傳送一些引數:
public class OrderBaseMsg {
	//訂單資訊
	
		//支付型別
				public String payment_type = "1";
				//必填,不能修改
				//伺服器非同步通知頁面路徑
				public String notify_url = "";
				//需http://格式的完整路徑,不能加?id=123這類自定義引數

				//頁面跳轉同步通知頁面路徑
				public String return_url = "";
				//public String return_url = "http://127.0.0.1/order/returnUrl";
				//需http://格式的完整路徑,不能加?id=123這類自定義引數,不能寫成http://localhost/

				//商戶訂單號
				public String out_trade_no = "";
				//商戶網站訂單系統中唯一訂單號,必填

				//訂單名稱
				public String subject = "";
				//必填

				//付款金額
				public String total_fee = "";
				//必填

				//訂單描述

				public String body = "";
				//商品展示地址
				public String show_url = "";
				//需以http://開頭的完整路徑,例如:http://www.商戶網址.com/myorder.html

				//防釣魚時間戳
				public String anti_phishing_key = "";
				//若要使用請呼叫類檔案submit中的query_timestamp函式

				//客戶端的IP地址
				public String exter_invoke_ip = "";
				//非區域網的外網IP地址,如:221.0.0.1
				
				
				public Map<String,String> orderMsg(){
					//把請求引數打包成陣列
					Map<String, String> sParaTemp = new HashMap<String, String>();
					sParaTemp.put("service", "create_direct_pay_by_user");
			        sParaTemp.put("partner", AlipayConfig.partner);
			        sParaTemp.put("seller_email", AlipayConfig.seller_email);
			        sParaTemp.put("_input_charset", AlipayConfig.input_charset);
					sParaTemp.put("payment_type", payment_type);
					sParaTemp.put("notify_url", notify_url);
					sParaTemp.put("return_url", return_url);
					sParaTemp.put("out_trade_no", out_trade_no);
					sParaTemp.put("subject", subject);
					sParaTemp.put("total_fee", total_fee);
					//sParaTemp.put("body", body);
					//sParaTemp.put("show_url", show_url);
					sParaTemp.put("anti_phishing_key", anti_phishing_key);
					sParaTemp.put("exter_invoke_ip", exter_invoke_ip);
					return sParaTemp;
				}
				
		
}


在AlipayCtrl中主要處理了非同步回撥,這個可文件你就可以知道有那些值返回給你,你只需要根據自己的框架特性接收就好。然後修改你的訂單。

在AlipayNotify中,主要是對資料的驗證,這個是你除錯支付的關鍵檔案,因為他會通過log輸出一些關鍵資訊供你除錯,你需要根據自己習慣更改log格式。

相關推薦

支付支付web

在接入支付寶支付前,你需要先和支付寶簽約,web端要簽約即時支付,app端支付要簽約app支付。當然要是需要別的也可以根據需要簽約 支付寶支付相對微信支付接入要簡單一些,簽約成功後,你就可以在你的開發者賬戶中看到一個已上線的簽約專案,裡面會標明你可以使用那些功能,你也可以

Web專案支付模組開發(JAVA)----------------(2)支付對接專案實踐 ||將Demo匯入專案

(1)通過前面的除錯與執行,我們支付寶的Demo已經可以執行,下面就將它放入到我們的專案中 (2)首先將zfbinfo.properties的檔案放入到我們專案的resource下 (3)將demo中的四個sdk放入到webapp–>WEB

php編程如何調用支付支付接口的實現

支付寶 支付接口 對於任何一款軟件來說,支付功能都是核心的,那麽目前的主流支付接口主要是支付寶、微信和銀聯卡,而大多數開發技術人員對於如何調用支付寶的支付接口還存在很大的困擾,今天就來跟大家分享一下如何正確調用支付寶支付接口的實現,代碼如下所示:public function zfbpay1(){re

支付支付App支付

ica 入參 class 圖片 方式 author amount src span 與微信支付對比,支付寶支付就沒有那麽多坑了,畢竟支付寶開放平臺的文檔還是描述的很詳細的。 支付寶開放平臺地址:https://docs.open.alipay.com/204/10529

cocos creator整合支付支付功能--安卓

App支付Android整合流程:(開啟cocos creator打包後的android studio 工程) 1:匯入開發資源 將alipaySdk-xxxxxxxx.jar包放入商戶應用工程的libs目錄下,如下圖。 2:將此jar包匯入到依賴jar包中去:右鍵jar包選擇 Add

支付開發手機網站支付(H5支付)

其實官方的文件中:https://docs.open.alipay.com/203 介紹的已經很詳細了,我就實地的看文件操作了一遍,具體步驟如下: 一、建立應用 流程如下: 首先要有支付寶開放平臺: https://open.alipay.com/platform/h

支付沙箱電腦網站支付

《支付寶沙箱連結》 《電腦網站支付快速接入文件》 引入SKD: Maven依賴 程式碼: public class AlipayVO implements Serializable { private static final l

Android開發 支付支付

Android接入支付寶實現支付功能 我本來是想直接講Android支付這一塊的,包括支付寶,微信,其他第三方整合支付等,但是微信開放平臺他對我的賬號做了限制,所有我今天就先把重心放在支付寶的支付上,也算是寫得儘可能詳細些吧,畢竟是第三方的SDK,只要我們耐心的閱讀文件和開

Java支付支付(電腦網站支付)案例實戰

摘要:最近的一個專案中涉及到了支付業務,其中用到了微信支付和支付寶支付,在做的過程中也遇到些問題,正好馬上放假了,公司不忙了,所以現在總結梳理一下,分享給有需要的人,也為自己以後回顧留個思路。 一:支付寶支付接入準備工作: 首先,支付寶支付和微信支付意願,都是隻支援企業使

web開發--支付支付

1.應用建立: 應用建立詳細過程參考官方文件,連線如下:應用建立詳解 2.配置金鑰 2.1生成公鑰和私鑰: openssl OpenSSL> genrsa -out app_private_key.pem 2048 # 私鑰RSA2 OpenSSL> rsa

APP接入支付支付服務端實現

最近公司接了一個外包專案,開發過程中用到了呼叫微信和支付寶的第三方支付介面,因為之前沒用整合過,所以這次用到了之後就想總結一下分享給大家,這裡只介紹支付寶的APP支付和提現介面的服務端接入實現。  首先,要接入第三方的介面,最重要的還是先看官方文件,因為不管你從哪裡搜尋

bugJAVA web工程識別不了

使用mac的split view還是比較爽,可以一邊編寫程式碼,一邊寫blog,遇到問題就可以記錄下來。要是10年前開始有筆記的習慣就好了,當年年少不懂事,現在正當年,亡羊補牢,希望不晚。 以前習慣使用eclipse,win10下面使用idea,跑我的程式,也可

Thinkphp5開發電腦網站支付支付詳細流程(線上測試

在沙箱測試篇講過的我在這裡就不再做重複,詳情請見上一篇PHP開發電腦網站支付寶支付詳細流程(沙箱測試篇) 在沙箱測試的時候使用的是沙箱環境中的配置,現在進行線上測試,需要建立應用 1、建立應用 登入螞蟻金服開放平臺商戶賬號,進入管理中心 選擇開發者中心->網頁&移動應用

PHP開發電腦網站支付支付詳細流程(沙箱測試

先附上我開始做沙箱測試的時候寫的筆記 (1)準備工作 1、螞蟻金服開放平臺的商戶賬號(個人賬號不行) 2、php5.5以上的開發環境 (2)具體流程 1、demo下載 進入螞蟻金服開放平臺的首頁,選擇文件中心——開發文件 找到電腦網站支付,單擊進入

DAY108 - 路飛學城(四)- 路飛學城支付支付、微信推送

一、支付寶支付 正式環境: ​ 用營業執照,申請商戶號,appid 測試環境: ​ 沙箱環境:https://openhome.alipay.com/platform/appDaily.htm?tab=info 第一步 # 呼叫AliPay介面 from utils.pay import AliP

一個PHP檔案搞定支付系列手機網站支付(相容微信瀏覽器)

<?php header('Content-type:text/html; Charset=utf-8'); $appid = 'xxxxx'; //https://open.alipay.com 賬戶中心->金鑰管理->開放平臺金鑰,填寫添加了電腦網站支付的應用的APPID $retur

iOS支付問題:呼叫支付AlipaySDK找不到標頭檔案

以下是網上找到得解決方案,但未能解決我的問題: http://my.oschina.net/u/734027/blog/358196 解決方案:openssl 和 Util目錄已經新增到Build setting --  header search path 的時候,我是

web頁面呼叫支付支付

  web頁面呼叫支付寶支付 此文章是前端單獨模擬完成支付,若在線上環境則需要後臺配合產生簽名等引數 在螞蟻金服開放平臺申請沙箱環境 將沙箱環境中的金鑰、應用閘道器、回撥地址補

支付支付APP支付介面 伺服器端

下載伺服器端DEMO 匯入專案中 程式碼部分 // 例項化客戶端 AlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig

整合第三方SDK支付支付

    不久前,分享了一篇關於整合微信支付的爬坑總結,如果你還沒來的及看,就戳我吧。今天想要分享的是一篇關於支付寶支付的。當然了,在如今這個網際網路告訴發展的時代,幾乎所有的APP都離不開支付功能,既然要支付,那就離不開支付寶和微信啦,當然她也就成為面試中常見的【人物】嘍。那