支付寶開發之手機網站支付(H5支付)
其實官方的文件中:https://docs.open.alipay.com/203 介紹的已經很詳細了,我就實地的看文件操作了一遍,具體步驟如下:
一、建立應用
流程如下:
首先要有支付寶開放平臺: https://open.alipay.com/platform/home.htm 賬號,然後登入網站,建立一個應用
輸入應用名稱,然後點選建立,詳細請檢視支付寶官方的介紹:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.1yF5nC&treeId=193&articleId=105894&docType=1
二、填寫應用基礎資訊
然後輸入應用的一些資訊
提交稽核。。
三、配置沙箱
這裡我用支付寶提供的沙盒來測試,螞蟻沙箱環境(Beta)是協助開發者進行介面功能開發及主要功能聯調的模擬環境,在沙箱完成介面開發及主要功能除錯後,請務必在螞蟻正式環境進行完整的功能驗收測試。
點選開發者中心中的沙箱進入沙箱環境頁面,系統已經自動為你建立一個應用,在基礎資訊中可以看到應用資訊。
同時還建立了賬戶
1. 生成並上傳RSA2(SHA256)的應用公鑰,可以查考這:https://doc.open.alipay.com/docs/doc.htm?treeId=291&articleId=105971&docType=1
配置RSA2(SHA256)的應用公鑰後,不需要配置RSA(SHA1)金鑰,RSA和RSA2簽名演算法區別可以參考此處;
2. 編寫程式碼時,請將
a.請求閘道器修改為:https://openapi.alipaydev.com/gateway.do
b.appid切換為沙箱的appid
c.簽名方式使用RSA2
d.應用私鑰使用第1步生成的RSA2(SHA256)的私鑰(請根據開發語言進行選擇原始或pkcs8格式)
e.支付寶公鑰切換為第1步配置後應用公鑰後,點選檢視支付寶公鑰看到的公鑰
在JAVA中的使用方式如下:
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipaydev.com/gateway.do","2016072200101XXXX","請複製第1步中生成的金鑰中的商戶應用私鑰","json","utf-8","沙箱環境RSA2支付寶公鑰","RSA2");
四、匯入專案
然後下載支付寶提供的DEMO
下載下來之後,解壓匯入到Eclipse中去,結構如下
修改其中的配置檔案AlipayConfig
-
package com.alipay.config;
-
-
public class AlipayConfig {
-
// 商戶appid
-
public static String APPID = "";
-
// 私鑰 pkcs8格式的
-
public static String RSA_PRIVATE_KEY = "";
-
// 伺服器非同步通知頁面路徑 需http://或者https://格式的完整路徑,不能加?id=123這類自定義引數,必須外網可以正常訪問
-
public static String notify_url = "http://商戶閘道器地址/alipay.trade.wap.pay-JAVA-UTF-8/notify_url.jsp";
-
// 頁面跳轉同步通知頁面路徑 需http://或者https://格式的完整路徑,不能加?id=123這類自定義引數,必須外網可以正常訪問 商戶可以自定義同步跳轉地址
-
public static String return_url = "http://商戶閘道器地址/alipay.trade.wap.pay-JAVA-UTF-8/return_url.jsp";
-
// 請求閘道器地址
-
public static String URL = "https://openapi.alipay.com/gateway.do";
-
// 編碼
-
public static String CHARSET = "UTF-8";
-
// 返回格式
-
public static String FORMAT = "json";
-
// 支付寶公鑰
-
public static String ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjrEVFMOSiNJXaRNKicQuQdsREraftDA9Tua3WNZwcpeXeh8Wrt+V9JilLqSa7N7sVqwpvv8zWChgXhX/A96hEg97Oxe6GKUmzaZRNh0cZZ88vpkn5tlgL4mH/dhSr3Ip00kvM4rHq9PwuT4k7z1DpZAf1eghK8Q5BgxL88d0X07m9X96Ijd0yMkXArzD7jg+noqfbztEKoH3kPMRJC2w4ByVdweWUT2PwrlATpZZtYLmtDvUKG/sOkNAIKEMg3Rut1oKWpjyYanzDgS7Cg3awr1KPTl9rHCazk15aNYowmYtVabKwbGVToCAGK+qQ1gT3ELhkGnf3+h53fukNqRH+wIDAQAB";
-
// 日誌記錄目錄
-
public static String log_path = "/log";
-
// RSA2
-
public static String SIGNTYPE = "RSA2";
-
}
把其中的一些資訊替換成 沙箱的資訊,其中同步非同步通知要外網能訪問的,我用的是Ngrok做的代理。
下訂單的是在pay.jsp頁面中。。。用的是JSP
-
<%@ page language="java" contentType="text/html; charset=UTF-8"
-
pageEncoding=
"UTF-8"%>
-
<%@page import="com.alipay.config.AlipayConfig" %>
-
<%@page import="com.alipay.api.AlipayClient"%>
-
<%@page import="com.alipay.api.DefaultAlipayClient"%>
-
<%@page import="com.alipay.api.AlipayApiException"%>
-
<%@page import="com.alipay.api.response.AlipayTradeWapPayResponse"%>
-
<%@page import="com.alipay.api.request.AlipayTradeWapPayRequest"%>
-
<%@page import="com.alipay.api.domain.AlipayTradeWapPayModel" %>
-
<%@page import="com.alipay.api.domain.AlipayTradeCreateModel"%>
-
<%
-
/* *
-
* 功能:支付寶手機網站支付介面(alipay.trade.wap.pay)介面除錯入口頁面
-
* 版本:2.0
-
* 修改日期:2016-11-01
-
* 說明:
-
* 以下程式碼只是為了方便商戶測試而提供的樣例程式碼,商戶可以根據自己網站的需要,按照技術文件編寫,並非一定要使用該程式碼。
-
請確保專案檔案有可寫許可權,不然列印不了日誌。
-
*/
-
%>
-
<%
-
if(request.getParameter("WIDout_trade_no")!=null){
-
// 商戶訂單號,商戶網站訂單系統中唯一訂單號,必填
-
String out_trade_no = new String(request.getParameter("WIDout_trade_no").getBytes("ISO-8859-1"),"UTF-8");
-
// 訂單名稱,必填
-
String subject = new String(request.getParameter("WIDsubject").getBytes("ISO-8859-1"),"UTF-8");
-
System.out.println(subject);
-
// 付款金額,必填
-
String total_amount=new String(request.getParameter("WIDtotal_amount").getBytes("ISO-8859-1"),"UTF-8");
-
// 商品描述,可空
-
String body = new String(request.getParameter("WIDbody").getBytes("ISO-8859-1"),"UTF-8");
-
// 超時時間 可空
-
String timeout_express="2m";
-
// 銷售產品碼 必填
-
String product_code="QUICK_WAP_PAY";
-
/**********************/
-
// SDK 公共請求類,包含公共請求引數,以及封裝了簽名與驗籤,開發者無需關注簽名與驗籤
-
//呼叫RSA簽名方式
-
AlipayClient client = new DefaultAlipayClient(AlipayConfig.URL, AlipayConfig.APPID, AlipayConfig.RSA_PRIVATE_KEY, AlipayConfig.FORMAT, AlipayConfig.CHARSET, AlipayConfig.ALIPAY_PUBLIC_KEY,AlipayConfig.SIGNTYPE);
-
AlipayTradeWapPayRequest alipay_request=new AlipayTradeWapPayRequest();
-
-
// 封裝請求支付資訊
-
AlipayTradeWapPayModel model=new AlipayTradeWapPayModel();
-
model.setOutTradeNo(out_trade_no);
-
model.setSubject(subject);
-
model.setTotalAmount(total_amount);
-
model.setBody(body);
-
model.setTimeoutExpress(timeout_express);
-
model.setProductCode(product_code);
-
alipay_request.setBizModel(model);
-
// 設定非同步通知地址
-
alipay_request.setNotifyUrl(AlipayConfig.notify_url);
-
// 設定同步地址
-
alipay_request.setReturnUrl(AlipayConfig.return_url);
-
-
// form表單生產
-
String form = "";
-
try {
-
// 呼叫SDK生成表單
-
form = client.pageExecute(alipay_request).getBody();
-
response.setContentType("text/html;charset=" + AlipayConfig.CHARSET);
-
response.getWriter().write(form);//直接將完整的表單html輸出到頁面
-
response.getWriter().flush();
-
response.getWriter().close();
-
} catch (AlipayApiException e) {
-
// TODO Auto-generated catch block
-
e.printStackTrace();
-
}
-
}
-
%>
-
<!DOCTYPE html>
-
<html>
-
<head>
-
<title>支付寶手機網站支付介面</title>
-
<meta http-equiv="
Content-Type"
content=
"text/html; charset=utf-8">
-
<style>
-
.......
-
</style>
-
</head>
-
<body text=#000000 bgColor="#ffffff" leftMargin=0 topMargin=4>
-
<header class="am-header">
-
<h1>支付寶手機網站支付介面快速通道(介面名:alipay.trade.wap.pay)
</h1>
-
</header>
-
<div id="main">
-
<form name=alipayment action='' method=post target="_blank">
-
<div id="body" style="clear:left">
-
<dl class="content">
-
<dt>商戶訂單號:
</dt>
-
<dd>
-
<input id="WIDout_trade_no" name="WIDout_trade_no" />
-
</dd>
-
<hr class="one_line">
-
<dt>訂單名稱:
</dt>
-
<dd>
-
<input id="WIDsubject" name="WIDsubject" />
-
</dd>
-
<hr class="one_line">
-
<dt>付款金額:
</dt>
-
<dd>
-
<input id="WIDtotal_amount" name="WIDtotal_amount" />
-
</dd>
-
<hr class="one_line"/>
-
<dt>商品描述:
</dt>
-
<dd>
-
<input id="WIDbody" name="WIDbody" />
-
</dd>
-
<hr class="one_line">
-
<dt>
</dt>
-
<dd id="btn-dd">
-
<span class="new-btn-login-sp">
-
<button class="new-btn-login" type="submit" style="text-align:center;">確 認
</button>
-
</span>
-
<span class="note-help">如果您點選“確認”按鈕,即表示您同意該次的執行操作。
</span>
-
</dd>
-
</dl>
-
</div>
-
</form>
-
<div id="foot">
-
<ul class="foot-ul">
-
<li>
-
支付寶版權所有 2015-2018 ALIPAY.COM
-
</li>
-
</ul>
-
</div>
-
</div>
-
</body>
-
<script language="javascript">
-
function GetDateNow() {
-
var vNow =
new
Date();
-
var sNow =
"";
-
sNow +=
String(vNow.getFullYear());
-
sNow +=
String(vNow.getMonth() +
1);
-
sNow +=
String(vNow.getDate());
-
sNow +=
String(vNow.getHours());
-
sNow +=
String(vNow.getMinutes());
-
sNow +=
String(vNow.getSeconds());
-
sNow +=
String(vNow.getMilliseconds());
-
document.getElementById(
"WIDout_trade_no").value = sNow;
-
document.getElementById(
"WIDsubject").value =
"手機網站支付測試商品";
-
document.getElementById(
"WIDtotal_amount").value =
"0.01";
-
相關推薦
支付寶開發之手機網站支付(H5支付)
其實官方的文件中:https://docs.open.alipay.com/203 介紹的已經很詳細了,我就實地的看文件操作了一遍,具體步驟如下:
一、建立應用
流程如下:
首先要有支付寶開放平臺: https://open.alipay.com/platform/h
一個PHP檔案搞定支付寶系列之手機網站支付(相容微信瀏覽器)
<?php
header('Content-type:text/html; Charset=utf-8');
$appid = 'xxxxx'; //https://open.alipay.com 賬戶中心->金鑰管理->開放平臺金鑰,填寫添加了電腦網站支付的應用的APPID
$retur
支付寶沙箱之電腦網站支付
《支付寶沙箱連結》
《電腦網站支付快速接入文件》
引入SKD:
Maven依賴
程式碼:
public class AlipayVO implements Serializable {
private static final l
支付寶開發平臺之第三方授權登入與獲取使用者資訊
對於第三方登入,我們常見了,很多應用可以進行第三方登入,我常用的有:QQ、微信、新浪、支付寶等等,今天我們就一起來簡單學習一下支付寶第三方授權登入。
開啟支付寶開發平臺,註冊成為開發者,點選開發者中心,在我的應用中建立一個應用:
點選功能資訊,新增我們需要
Web專案支付模組開發(JAVA)----------------(2)支付寶對接之專案實踐 ||將Demo匯入專案
(1)通過前面的除錯與執行,我們支付寶的Demo已經可以執行,下面就將它放入到我們的專案中
(2)首先將zfbinfo.properties的檔案放入到我們專案的resource下
(3)將demo中的四個sdk放入到webapp–>WEB
iOS 手機沒有安裝支付寶的情況下,不調支付寶網頁的解決的方法
sar inf order 手機 tin popu 全部 shared bject
NSArray *array = [[UIApplication sharedApplication] windows];
UIWindow* win=[array objectAt
25、【支付模組開發】——將配置好的支付寶沙箱環境整合到我們的專案中以及支付介面的編寫
####1、將支付寶Demo中的相關檔案複製到我們的專案中: 首先,我們將Demo中src中的包及裡面的檔案複製到我們專案中 同樣,我們也要講zhifubao.properties這個配置檔案方法我們專案中的 resources目錄下:
加下來就是我們的jar包了~ 首先我們先在
24、【支付模組開發】——將下載下來的支付寶API Demo執行在web上
上一篇23、【支付模組快發】——Java對接支付寶步驟(沙箱環境)我們講解了怎麼配置相關配置檔案,下面我們除錯一下怎麼使其在IDEA的web專案中跑起來,然後在瀏覽器中進行操作 我們用IDEA匯入支付寶對接Demo的是時候發現不能執行,下面講解一下怎麼在IDEA中執行支付寶Demo並且在
支付寶開發 ——第三方支付
支付寶開發
第三方支付
線上支付
線上支付是指賣方與買方通過因特網上的電子商務網站進行交易時,銀行為其提供網上資金結算服務的一種業務。它為企業和個人提供了一個安全、快捷、方便的電子商務應用環境和網上資金結算工具。線上支付不僅幫助企業實現了銷售款項的快速歸集,縮短收款週期,同時
基於notification服務支付寶微信個人網站收款監控 原始碼下載
根據notification服務監控手機通知,收到收款金額再通過https反饋給伺服器,需要開通手機通知讀取許可權,有引導客戶開通許可權.同時加入無聲播放音訊,永久守護程序不被系統關掉,穩定性比通過xposed框架hook版的穩定多了,xposed框架的自動生成收款二維碼的我
支付寶小程式跳轉到h5頁面web-view
支付寶小程式跳轉到h5頁面web-view
基礎庫 1.6.0 開始支援,低版本需做相容
元件是一個可以用來承載H5網頁的元件,會自動鋪滿整個小程式頁面。 web-view 要渲染的H5網頁URL。H5網頁URL需要登入小程式管理後臺-小程式詳細-設定中,進行H5域名白名單配置 示
iOS支付寶問題之:呼叫支付寶AlipaySDK找不到標頭檔案
以下是網上找到得解決方案,但未能解決我的問題:
http://my.oschina.net/u/734027/blog/358196
解決方案:openssl 和 Util目錄已經新增到Build setting -- header search path 的時候,我是
支付寶最新介面 手機版和電腦版 tp框架支付介面
下載最新的支付寶demo https://docs.open.alipay.com/203/105910
1. 手機版支付介面 目錄
控制器呼叫支付介面
Vendor('alipay.wappay.service.Alip
支付開發(二)----微信支付開發之微信公眾號支付JAVA版
一、開通微信公眾號
1.1公眾平臺帳號型別
微信公眾平臺分為服務號、企業號、訂閱號。
1、訂閱號:主要偏於為使用者傳達資訊(類似報紙雜誌),認證前後都是每天只可以群發一條訊息;
2、服務號:主要
android 支付寶開發 6001錯誤解決方法
錯誤
錯誤資訊如下:
resultStatus={6001};memo={操作已經取消。};result={}
原因
經過研究 發現是公鑰上傳錯了
公鑰與私鑰詳情看開發文件
解決
上傳RSA公鑰,在“合作伙伴金鑰管理”下,點選“RSA加密”後的“新增金鑰”,把自己的公鑰複
v2實名支付寶出售|V1型支付寶賬號出售|出售V2實名支付寶賬號
實名支付寶出售 v2實名支付寶出售 v1實名支付寶出售 v2實名支付寶出售,聯系QQ:312020601(純手工註冊的)實名支付寶賬號
V1型支付寶賬號出售,QQ:312020601(穩定安全)賣支付寶V2實名認證支付寶賬號
(聯系QQ_312020601)出售實名支付寶賬號出售,出售v2
spring_boot_pay支付寶,微信,銀聯支付詳細代碼案例
fan target 簽名加密 china 整合 提示 業務 rom sig spring-boot-pay
支付服務:支付寶,微信,銀聯詳細代碼案例(除銀聯支付可以測試以外,支付寶和微信支付測試均需要企業認證,個人無法完成測試),項目啟動前請仔細閱讀 註意事項 。
友情
支付寶老大位置不保?第三方支付江湖變數依舊
auto 很快 問題 商業 頭條 許可 play 百度 應對
比達咨詢2017年第2季度中國第三方移動支付市場發展報告顯示,第2季度的第三方移動支付市場交易規模中,支付寶占51.9%,財付通占34.1%。這就意味著,在目前的第三方移動支付市場中,支付寶和財付通雙雄格局已定
支付寶即時到賬以及掃碼支付相關註意事項
版本 http secret object tools 雜文 其他 重要 兩種 最近在做支付,支付寶感覺比微信相對麻煩點,可能我是第一次做吧。網上的教程不少,可是重復率很高,有些說的雖然很清楚,可是做起來還是麻煩不少,我把自己踩過的坑這裏分享記錄一下,以供大家引以為戒,
如何使用支付寶沙箱測試單筆轉賬到支付寶賬號(php版)
說明: 本帖是利用支付寶沙箱測試電腦網站支付介面 測試環境:Apache2.4.23 +php 5.6.25 沙箱環境測試正式環境請修改閘道器為下方值
正式環