教你个人实现支付宝pc网页支付详细教程

本文详述了使用Java在沙箱环境下配置并测试支付宝PC扫码支付的过程,包括在蚂蚁金服开放平台创建应用、使用EchoSite获取子域名、Eclipse中部署支付Demo以及如何封装支付功能。通过步骤指导,读者可以实现简单的支付宝扫码支付功能。
摘要由CSDN通过智能技术生成

说明一下

本次使用java语言,在沙箱环境下测试,使用的是内网穿透工具EchoSite

会需要支付宝支付的demo,这是支付宝pc网站支付demo的下载地址:https://docs.open.alipay.com/270/106291/

下面这个链接是包含支付宝demo,RSA签名工具,以及将支付宝提供demo里的jsp里的内容封装成方法,来实现网站扫码支付的源码,百度云上分享的,可以免费下载
链接:https://pan.baidu.com/s/1dxbh0QL7JX0UDqx-min4Ow
提取码:t7dg

不多说,开搞

1.前往蚂蚁金服开放平台

1.1.支付宝扫码登录我就不多说了,得实名认证
1.2.登录进去之后点击菜单栏的开发者中心,然后在开发服务的下面有研发服务,点进去
在这里插入图片描述
1.3.这是支付宝提供的沙箱测试用的,实际开发中是要创建应用,审核签约商户的,看一下划线的,有个印象,待会用得到
在这里插入图片描述
扫码下载
在这里插入图片描述
点击沙箱账号
在这里插入图片描述
1.4.使用RSA签名验签工具生成密匙,将生成的应用公匙设置在沙箱应用的RSA2密匙的地方,设置好后可以获取支付宝公匙,记住:生成的公匙和私匙是一对的,将私匙保存好,会用到

*这个是签名验签工具,密匙格式选java适用,长度2048,点击生成密匙
在这里插入图片描述

*这个是我生成的
在这里插入图片描述

*将生成的公匙设置在这里
在这里插入图片描述

2.前往EchoSite注册申请子域名

EchoSite首次是免费的,可以得到一个子域名一个月的使用期,之后续费的话一块钱一个月
还有个免费的是NATAPP,域名是随机的,使用过,不是很稳定,但是不收钱啊
其他的像花生壳啊之类的可以自行研究

2.1下载客户端后,配置一下你注册的账号和密码,还有申请的子域名
在这里插入图片描述
2.2在cmd下进入echosite.exe的父级目录,输入:echosite -config=echosite.yml start name2
我的子域名配置在name2上,你的如果配置在name1上,start后面就写name1
在这里插入图片描述

状态online说明联机成功,接下来请打开eclipse,导入支付宝支付java版的demo

3.eclipse上配置,部署,测试扫码支付的功能

3.1.成功导入后,打开AlipayConfig这个类
在这里插入图片描述

3.2.修改相应的属性,appid也要修改成你的

在这里插入图片描述

3.3.修改好后就可以把这个demo部署到tomcat启动服务,来到首页
注意:
1.要想最后支付完成能成功跳转,你必须把EchoSite启动
2.想要成功完成支付,订单号,订单名称,付款金额不能为空
具体可参考支付宝的官方开发文档

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
说一下,这个订单号和上面的不一样,是我当时忘了改同步通知的url了,然后又跑了一遍补上的,注意看浏览器url的变化,不填写同步通知的url是跳不到这个页面的
在这里插入图片描述

到这里,这个支付宝的demo算是测试完成了

4.封装支付宝的支付demo

我是在idea上用maven构建web项目,由于只是展示一下,只用到了SpringMVC

4.1.首先添加相关依赖

	<!--springmvc的依赖-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>4.1.3.RELEASE</version>
    </dependency>
    <!--支付宝的sdk-->
    <dependency>
      <groupId>com.alipay.sdk</groupId>
      <artifactId>alipay-sdk-java</artifactId>
      <version>3.4.27.ALL</version>
    </dependency>
    <!--servlet-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>
    <!--alibaba的fastjson-->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.49</version>
    </dependency>

4.2.将demo里的AlipayConfig.java直接拿过来

	
/* *
 *类名:AlipayConfig
 *功能:基础配置类
 *详细:设置帐户有关信息及返回路径
 *修改日期:2017-04-05
 *说明:
 *以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。
 *该代码仅供学习和研究支付宝接口使用,只是提供一个参考。
 */

public class AlipayConfig {
   

    // 应用ID,您的APPID,收款账号既是您的APPID对应支付宝账号
    public static String app_id = "你的appid";

    // 商户私钥,您的PKCS8格式RSA2私钥
    public static String merchant_private_key = "你的应用公匙生成时对应的私匙";

    // 支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。
    public static String alipay_public_key = "你的支付宝公匙";

    // 服务器异步通知页面路径  需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
    public static String notify_url = "http://填写你的公网地址/项目名/notify_url";

    // 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
    public static String return_url ="http://填写你的公网地址(也就是你申请的哪个域名)/项目名/return_url";

    // 签名方式
    public static String sign_type = "RSA2";

    // 字符编码格式
    public static String charset = "utf-8";

    // 支付宝网关
    public static String gatewayUrl 
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值