支付寶java介面
❶ java 支付寶支付介面 的 NotifyUrl 應該怎麼返回success 官網上說列印輸出 我用了println, 後來用return
(HttpServletRequestrequest,HttpServletResponseresponse,StringoutTradeNo){
//獲取支付寶POST過來反饋信息
Map<String,String>params=newHashMap<String,String>();
Map<?,?>requestParams=request.getParameterMap();
for(Iterator<?>iter=requestParams.keySet().iterator();iter.hasNext();){
Stringname=(String)iter.next();
String[]values=(String[])requestParams.get(name);
StringvalueStr="";
for(inti=0;i<values.length;i++){
valueStr=(i==values.length-1)?valueStr+values[i]
:valueStr+values[i]+",";
}
//亂碼解決,這段代碼在出現亂碼時使用。
//valueStr=newString(valueStr.getBytes("ISO-8859-1"),"utf-8");
params.put(name,valueStr);
}
//切記alipaypublickey是支付寶的公鑰,請去open.alipay.com對應應用下查看。
//booleanAlipaySignature.rsaCheckV1(Map<String,String>params,StringpublicKey,Stringcharset,Stringsign_type)
try{
booleanflag=AlipaySignature.rsaCheckV1(params,App.AliBaPay.ALIPAY_PUBLIC_KEY,"UTF-8","RSA2");
if(flag){
if("TRADE_SUCCESS".equals(params.get("trade_status"))||"TRADE_FINISHED".equals(params.get("trade_status"))){
//支付成功,錄入訂單數據
if(userMoneyService.userUpdateWaterAccountInfo(Integer.valueOf(outTradeNo))){
return"success";
}
}
}
}catch(Exceptione){
}
return"failure";
}
整個介面返回的數據,處理為字元串返回即可,不需要跳轉,也不能跳轉,要在你的resposne中body數據
記得採納
❷ java支付寶介面支付完成後怎麼進行頁面跳轉
這個在支付寶的介面里就有一個文件return_url.php這個是接受返回的數據的,如果想要返回該網址,那就在
alipay.config.php設置這個
//頁面跳轉同步通知頁面路徑
$return_url =
---------------------解決方案------------------------------
我也在看支付寶直接,流程差不多知道了,在支付寶論壇里可以下載一個開發文檔,裡面有php的demo,裡面可以設置狀態頁面的地址和返回頁面的地址,只是測試有點麻煩,沒有自己的網站
❸ java版網站支付寶付款介面,怎麼用,看了開發文檔,不太懂
配置 config類 ,配置return。jsp,就這么簡單
❹ java調用支付寶介面怎麼保證安全
支付寶提供的介面前提都是基於用戶對商家的概念,就是說支付都是打到商家的賬戶上的.沒有個人之間的轉賬.
支付其實就是生成一個單號,相當於在商家那裡買了一個商品.
在 支付寶開發平台有提供各種形式的demo;java版本的包名create_direct_pay_by_user-JAVA-UTF-8;這個後面需要.
看看支付寶提供的幾個介面類:
1配置類:
提示:如何獲取安全校驗碼和合作身份者ID
*1.用您的簽約支付寶賬號登錄支付寶網站(www.alipay.com)
*2.點擊「商家服務」(https://b.alipay.com/order/myOrder.htm)
*3.點擊「查詢合作者身份(PID)」、「查詢安全校驗碼(Key)」
//支付的流程就是本地根據配置好的參數和參數生成的簽名,通過form表單,自動提交,生成鏈接提交給支付寶,支付寶驗證處理完後,回調給return_url的地址,
//然後在本地通過上傳前的參數和回調來的參數再次生成簽名對比,來看是否數值有變化,這樣雙向簽名認證後保證成功後用戶在進行自己的業務邏輯處理
public class AlipayConfig {
/**
* 合作身份者ID,以2088開頭由16位純數字組成的字元串
*/
public static String partner = Global.getConfig("partner");//我是參數內容我是寫在了配置文件裡面
/**
* 收款支付寶賬號,一般情況下收款賬號就是簽約賬號
*/
public static String seller_email =Global.getConfig("seller_email");
/**
* 商戶的私鑰
*/
public static String key = Global.getConfig("key");
/**
* notify_url 交易過程中伺服器通知的頁面 要用 http://格式的完整路徑,不允許加?id=123這類自定義參數
*這里不需要支付寶主動提供訂單狀態變化的回調的話,是暫時沒有用的,我這里沒用到
*/
public static String notify_url = Global.getConfig("notify_url");
/**
* 付完款後跳轉的頁面 要用 http://格式的完整路徑,不允許加?id=123這類自定義參數
* 不能寫成http://localhost/
*/
public static String return_url = Global.getConfig("return_url");
// 網站商品的展示地址,不允許加?id=123這類自定義參數
//public static String show_url = Global.getConfig("");//這里我也沒用到
//↑↑↑↑↑↑↑↑↑↑請在這里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
//訪問模式,根據自己的伺服器是否支持ssl訪問,若支持請選擇https;若不支持請選擇http
public static String transport = "http";
// 調試用,創建TXT日誌文件夾路徑;沒用到
// public static String log_path = Global.getConfig("");//"D:\\";
public static String log_path = "D:\\";
/**
* 字元編碼格式 目前支持 gbk 或 utf-8
* 好像必須是小寫的(沒試過)
*/
public static String input_charset = "utf-8";
/**
* 簽名方式 不需修改
*/
public static String sign_type = "MD5";
//所有沒用的配置信息,可以不用刪掉,但是不能為空,不然支付寶會報錯
}
❺ 自己做一個小型的購系統怎樣用java調用支付寶介面
1、如果你要做支付功能,技術上很簡單,支付寶有提供介面,改兩個參數就可以用了,非常簡單。
2、但是你得網站如果要上線盈利的話,就麻煩了。
3、首先你的支付寶收款的賬號要進行商家認證,具體怎麼認證我就不知道了,當時是我老闆認證的,我就知道這個商家實名認證比個人實名認證麻煩的多。認證之後支付寶會給你兩個參數,一個是合作身份者ID,以2088開頭由16位純數字組成的字元串,一個是商戶的私鑰。你拿到這兩個參數之後去下載支付寶提供的介面程序,把這兩個參數填進去就好了,別的都不用動。當然訂單價格和訂單號的生成規則你可以自己寫。總之支付寶的介面開發的非常完善,而且傻瓜式操作,一看就懂。
4、然後你的網站域名要備案,申請ICP證,經營性ICP(為用戶提供有償的信息服務)需要你注冊公司的,而且營業執照很麻煩,我老闆現在還在辦理。
如果你只是想加個功能,看看介面怎麼用,那簡單。但是你要做正規的網站用介面盈利的話,技術上實現很簡單,把程序包下下來,然後改兩個參數,但是合法經營的話需要的手續很多。
❻ 集成支付寶java介面key有什麼作用
支付寶交易安全校驗碼(key)是商戶與支付寶簽約後,商戶獲得的支付寶商戶密鑰。
當商戶把支付寶功能接入商戶網站時會用到它們,以便讓支付寶認證商戶。
此外還有個重要參數是合作者身份ID(partner)
在和支付寶對接的時候, 這個key 會拼接在參數後面,然後進行加密 (可以是MD5,也可以是RSA)
不同的商戶,key值不一樣
這樣可以保證加密出來的參數安全性
❼ java 調用支付介面為什麼非同步
在做java版本的支付寶介面的時候,最初是遇到了這樣的問題,就是說,在直接的掃碼支付,或者是直接的登錄賬號支付,是沒有問題的,
但是,在這樣的一種情況下是出現了一個問題,
我web端調用支付寶介面進行支付,一般都是支付成功之後,獲得支付成功信息,然後同時去更改我本地訂單狀態(已付款)。
但是有一種情況是這樣的:
調用支付寶介面,你輸入賬號密碼之後, 在支付寶最後一步你不去點確認付款。直接退出(相當於你沒有付款)。
然後,你用自己的手機支付寶客戶端打開,你會看到有一個未付款的訂單(也就是剛才你沒付款但生成的訂單)~這個時候 如果你去付款了,付款成功之後,就不可能調到我的web端呀?這樣我就不能更改我本地的訂單狀態了。
想問下,大家遇到這種情況是怎麼處理的?
有人說,每10秒鍾通過訂單號去支付寶查詢並得到該訂單狀態。這種方法貌似可以,但是我網路了半天沒有見到如何 根據訂單號去查詢訂單狀態啊!!! 支付寶的介面我有(Danbao擔保)。不太會用。
希望大神給予指點!!!在線坐等,感激萬分!!!
這個問題是來自一位博友,最開始也是沒有意識到什麼問題,為什麼是收到錢了,但是卻是沒有調用自己的邏輯代碼,
在看到了這位博友的問題之後,才是發現了自己的問題所在,所以在這里感謝一下,
然後是想說的是,知道了是什麼問題之後,然後就是專注於解決這個問題,在考慮了一上午之後還是不明白這個非同步通知是怎麼的接收到,然後是在一個偶然是看見了,一個提示,是說,自己的項目時候是允許這個路徑的訪問,因為非同步通知是伺服器通知,如果是你的過濾器或者是springmvc攔截器,把這個路徑攔截掉之後,那麼你就肯定是接收不到這個非同步通知了,
這個問題真的是很簡單,但是卻是糾結了一上午,在過濾器中將這個非同步通知路徑放開之後,然後就是支付成功之後,也是執行了自己的邏輯代碼,
這個就是這個非同步通知的遇到的問題,
❽ java支付介面怎麼寫
導入支付介面的jar包後,根據相關api就可以寫了。