codecamp

支付宝小程序 服务端·手机网站支付 DEMO

Demo 运行环境

  • JAVA Demo 适用于 JDK 版本 1.5 及以上版本。
  • PHP Demo 适用于 PHP 5.5 以上版本。
  • .Net Demo 适用于 .net 2010 及以上版本。

注意:DEMO 仅供参考,实际开发中需要结合具体业务场景修改使用。

下载

支付宝提供了如下语言 手机网站支付 Demo 示例,开发者可下载使用。

JAVA版 DEMO
PHP版 DEMO
.NET版 DEMO

使用说明

以 JAVA Demo 为例,开发者需下载 Demo 并导入 alipay.trade.wap.pay-java-utf-8。

image

源码目录结构说明

├─src

│ └─com.alipay

│ └─config

│ ├─AlipayConfig 配置类

│ └─util

│ ├─logFile 日志类

├─WebContent

│ └─META-INF

│ └─ wappay 手机网站支付

│ ├─close.jsp 统一收单交易关闭接口调试入口页面

│ ├─downloadurl.jsp 查询对账单下载地址接口调试入口页面

│ ├─ pay.jsp 支付宝手机网站支付接口(alipay.trade.wap.pay)接口调试入口页面

│ ├─query.jsp 统一收单线下交易查询调试入口页面

│ ├─refund.jsp 统一收单交易退款接口调试入口页面

│ ├─ refundquery.jsp 统一收单交易退款查询调试入口页面

│ └─ META-INF

│ └─ lib 依赖类库

│ ├─alipay-sdk-java-3.3.0.jar

│ ├─alipay-sdk-java-3.3.0-source.jar

│ ├─ commons-logging-1.1.1.jar

│ ├─ commons-logging-1.1.1-sources.jar

│ ├─index.html

│ ├─notify_url.jsp

│ ├─ return_url.jsp

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";
    // 日志记录目录
定义在 logFile 中
    public static String log_path = "/log";
    // RSA2
    public static String SIGNTYPE = "RSA2";}

index.html 说明

首页点击事件代码示例

<div id="main">


            <div id="body" style="clear:left">


                <dl class="content">


                    <dt></dt>


                    <dd id="btn-dd">


                        <span class="new-btn-login-sp">


                            <button class="new-btn-login" style="text-align:center;" onclick="window.open('./wappay/pay.jsp')">手机网站2.0支付(接口名:alipay.trade.wap.pay)</button>


                        </span>


                    </dd>


                    <dt></dt>


                    <dd id="btn-dd">


                        <span class="new-btn-login-sp">


                            <button class="new-btn-login" style="text-align:center;" onclick="window.open('./wappay/query.jsp')">手机网站2.0订单查询 (接口名:alipay.trade.query)</button>


                        </span>


                    </dd>


                    <dt></dt>


                    <dd id="btn-dd">


                        <span class="new-btn-login-sp">


                            <button class="new-btn-login" style="text-align:center;" onclick="window.open('./wappay/refund.jsp')">手机网站2.0订单退款  (接口名:alipay.trade.refund)</button>


                        </span>


                    </dd>


                    <dt></dt>


                    <dd id="btn-dd">


                        <span class="new-btn-login-sp">


                            <button class="new-btn-login" style="text-align:center;" onclick="window.open('./wappay/refundquery.jsp')">手机网站2.0订单退款查询(接口名:alipay.trade.fastpay.refund.query)</button>


                        </span>


                    </dd>


                    <dt></dt>


                    <dd id="btn-dd">


                        <span class="new-btn-login-sp">


                            <button class="new-btn-login" style="text-align:center;" onclick="window.open('./wappay/downloadurl.jsp')">手机网站2.0账单下载(接口名:alipay.data.dataservice.bill.downloadurl.query)</button>


                        </span>


                    </dd>


                </dl>


            </div>

PC 端运行结果

image

支付接口调用说明

更多接口调用详情请参考

接口英文名 接口中文名 描述
alipay.trade.wap.pay 手机网页支付接口 通过此接口传入订单参数,同时唤起支付宝手机网页支付页面
alipay.trade.close 交易关闭接口 通过此接口关闭此前已创建的交易,关闭后,用户将无法继续付款。仅能关闭创建后未支付的交易。
alipay.trade.query 交易状态查询接口 通过此接口查询某笔交易的状态,交易状态:交易创建,等待买家付款;未付款交易超时关闭,或支付完成后全额退款;交易支付成功;交易结束,不可退款。
alipay.trade.refund 交易退款接口 通过此接口对单笔交易进行退款操作。
alipay.trade.fastpay.refund.query 退款查询 查询退款订单的状态。
alipay.data.dataservice.bill.downloadurl.query 账单查询接口 调用此接口获取账单的下载链
支付宝小程序 服务端·H5 JSAPI DEMO
支付宝小程序框架 概述
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

支付宝小程序开发文档

支付宝小程序 快速示例

支付宝小程序 小程序快速示例

支付宝小程序 框架

支付宝小程序 组件

支付宝小程序组件 基础组件

支付宝小程序组件 无障碍访问

支付宝小程序 扩展组件

支付宝小程序扩展组件 UI组件

支付宝小程序 API

支付宝小程序 开发工具

支付宝小程序 云服务

支付宝小程序 Serverless

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }