第25天-支付宝沙箱,支付加密,内网穿透,支付宝新版SDK,支付回调,支付收单

本文介绍了如何集成支付宝支付,包括在蚂蚁金服开放平台上设置沙箱环境和密钥,使用内网穿透工具Natapp实现外网访问内网服务,以及通过AlipayEasySDK整合支付宝SDK,配置支付参数,处理支付成功后的异步通知。同时,文中还提到了可能遇到的问题,如订单超时和网络延迟,并给出了解决方案。
摘要由CSDN通过智能技术生成

1.支付宝支付

1.1.蚂蚁金服开放平台

https://open.alipay.com/platform/home.htm

1.2.沙箱环境

https://openhome.alipay.com/platform/appDaily.htm

1.2.1.密钥设置

采用RSA2非对称加密方式

在这里插入图片描述


支付宝密钥生成工具下载:

https://opendocs.alipay.com/open/291/105971

生成密钥:

在这里插入图片描述

在这里插入图片描述


支付宝沙箱 -> 设置公钥:商户公钥

在这里插入图片描述


支付宝沙箱 -> 保存设置

在这里插入图片描述

2.内网穿透


2.1.简介

内网穿透可以允许我们使用外网的网址来访问主机。


正常的外网需要访问应用的流程是:

  • 购买服务器并且有公网固定IP
  • 购买域名映射到服务器的IP
  • 域名需要进行备案和审核

2.2.使用场景

  • 开发测试(微信,支付宝等)
  • 智慧互联
  • 远程控制
  • 私有云

2.3.内网穿透常用软件

2.4.Natapp使用


2.4.1.下载natapp客户端

https://natapp.cn/#download

2.4.2.购买免费隧道

在这里插入图片描述

2.4.3.获取内网穿透地址

  • 以管理员身份运行natapp客户端
  • 执行此命令,natapp -authtoken 隧道authtoken

在这里插入图片描述



3.整合支付宝


支付宝SDK:https://opendocs.alipay.com/open/54/cyz7do

Alipay Easy SDK:https://github.com/alipay/alipay-easysdk

API接口文档:https://github.com/alipay/alipay-easysdk/blob/master/APIDoc.md


3.1.导入支付宝服务端新版SDK

<dependency>
	<groupId>com.alipay.sdk</groupId>
	<artifactId>alipay-easysdk</artifactId>
	<version>2.2.0</version>
</dependency>

3.2.支付宝配置

# 支付宝-沙箱
alipay.protocol=https
alipay.gatewayHost=openapi.alipaydev.com
alipay.signType=RSA2
alipay.appId=9021000122694995
# 商户私钥
alipay.merchantPrivateKey=static/alipay/zh_sy.txt
# 支付宝公钥
alipay.alipayPublicKey=static/alipay/zh_gy.txt
# fsp6n6.natappfree.cc 内网穿透地址
alipay.notifyUrl=http://server.natappfree.cc/alipay/notify
# 支付成功之后跳转的链接地址
alipay.returnUrl=http://member.gmall.com/memberOrder.html
# 支付限时
alipay.timeoutExpress=1m

AlipayProperties

package com.atguigu.gmall.order.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * 支付宝-沙箱环境参数 {@link AlipayProperties}
 *
 * @author zhangwen
 * @email: 1466787185@qq.com
 */
@ConfigurationProperties(prefix = "alipay")
@Data
public class AlipayProperties {
   

    private String protocol;
    private String gatewayHost;
    private String signType;
    /**
     * 应用id
     */
    private String appId;
    /**
     * 应用私钥
     */
    private String merchantPrivateKey;
    /**
     * 支付宝公钥
     */
    private String alipayPublicKey;
    /**
     * 异步通知接收服务地址
     */
    private String notifyUrl;
}

AlipayConfig

package com.atguigu.gmall.order.config;

import com.alipay.easysdk.factory.Factory;
import com.alipay.easysdk.kernel.Config;
import com.atguigu.common.utils.ReadTxtUtils;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;

import java.io.IOException;

/**
 * 支付宝配置 {@link AlipayConfig}
 *
 * @author zhangwen
 * @email: 1466787185@qq.com
 */
@EnableConfigurationProperties(AlipayProperties.class)
@Configuration
public class AlipayConfig {
   

    @Bean
    public Config config(AlipayProperties alipayProperties) throws IOException {
   
        Config config = new Config();
        config.protocol = alipayProperties.getProtocol();
        config.gatewayHost = alipayProperties.getGatewayHost(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值