1. 支付宝开放平台网址

  • 首页:https://open.alipay.com
  • 文档中心首页:https://docs.open.alipay.com
  • 文档分类网址:https://docs.open.alipay.com/catalog

2. 电脑网站支付

2.1 总体步骤参考

2.2 应用:生成的应用唯一标识 APPID 可用于调用开放产品接口

2.3 加密

2.3.1 对称加密

  • 明文→加密→密文
  • 密文→解密→明文
  • 举例:
    • 潘潘的明文:今晚八点老地方见
    • 潘潘的加密:jinwanbadianlaodifangjian
    • 潘潘的加密:2454365462524366565524
    • 网络发送密文:2454365462524366565524
    • 庆庆接收的密文:2454365462524366565524
    • 庆庆的解密:jinwanbadianlaodifangjian
    • 庆庆的解密:今晚八点老地方见
    • 大郎如果截获密文并知道加密过程就能够反推出明文。

2.3.2 非对称加密

  • 私钥加密的密文必须使用公钥解密
  • 公钥加密的密文必须使用私钥解密

2.3.3 调用支付宝接口时使用的密钥

  • 在支付宝开放平台的应用中设置商户公钥
  • 在支付宝开放平台的应用中获取支付宝的公钥
  • 在我们调用支付宝接口的程序中设置支付宝公钥、商户私钥

2.3.4 密钥生成工具安装

下载地址:https://ideservice.alipay.com/ide/getPluginUrl.htm?clientType=assistant&platform=win&channelType=WEB

2.3.5 生成商户密钥

密钥和应用(APPID)一一对应,即开发者需要为名下的每个应用分别设置密钥,且不同应用的密钥不能混用。

2.4 支付流程

电脑网站支付口 alipay.trade.page.pay(统一收单下单并支付页面接口)调用时序图如下:

3. 内网穿透

3.1 上网的常规方式:通过内网去访问外网

3.2 项目发布的常规方式

先在内网环境中完成开发,再部署到位于外网的生产服务器上

3.3 现在面临的特殊情况

我们现在在内网开发环境下,需要让外网的支付宝来调用内网中的项目。如果不采用特殊处理这种情况是访问不到的。

3.4 内网穿透

外网服务器借用内网穿透服务器、内网穿透的客户端访问内网服务器。

3.5 内网穿透工具:NATAPP

3.5.1 下载客户端工具,并解压到非中文没有空格的目录下,获得natapp.exe文件

3.5.2 创建隧道,使用免费的即可

3.5.3 config.ini配置文件

官方原版:
#将本文件放置于natapp同级目录 程序将读取 [default] 段
#在命令行参数模式如 natapp -authtoken=xxx 等相同参数将会覆盖掉此配置
#命令行参数 -config= 可以指定任意config.ini文件
[default]
authtoken=                      #对应一条隧道的authtoken
clienttoken=                    #对应客户端的clienttoken,将会忽略authtoken,若无请留空,
log=none                        #log 日志文件,可指定本地文件, none=不做记录,stdout=直接屏幕输出 ,默认为none
loglevel=ERROR                  #日志等级 DEBUG, INFO, WARNING, ERROR 默认为 DEBUG
http_proxy=                     #代理设置 如 http://10.123.10.10:3128 非代理上网用户请务必留空
配置好的示例:
#将本文件放置于natapp同级目录 程序将读取 [default] 段
#在命令行参数模式如 natapp -authtoken=xxx 等相同参数将会覆盖掉此配置
#命令行参数 -config= 可以指定任意config.ini文件
[default]
authtoken=b1646ec15e655a7a      #对应一条隧道的authtoken
clienttoken=                    #对应客户端的clienttoken,将会忽略authtoken,若无请留空,
log=stdout                      #log 日志文件,可指定本地文件, none=不做记录,stdout=直接屏幕输出 ,默认为none
loglevel=DEBUG                  #日志等级 DEBUG, INFO, WARNING, ERROR 默认为 DEBUG
http_proxy=                     #代理设置 如 http://10.123.10.10:3128 非代理上网用户请务必留空(如果上网是通过代理上网,则配置为代理服务器的IP地址,否则不配)

3.5.4 运行natapp.exe,拿到访问隧道的域名,供外网访问,natapp就帮我们把请求转发给natapp客户端,然后就能访问本机跑起来的服务,实现内网穿透

注意:供外网访问的域名是随机生成的,随时都有可能会变化!!

4. 沙箱环境

4.1 进入沙箱环境

4.2 获取值

4.3 设置应用公钥并获取支付宝公钥

5. Demo

5.1 下载Demo,体验代码案例

https://gw.alipayobjects.com/os/bmw-prod/43bbc4ba-4d71-402f-a03b-778dfef047a8.zip

5.2 导入Demo工程

5.3  修改配置

// 应用ID,您的APPID,收款账号既是您的APPID对应支付宝账号(使用沙箱环境的APPID)
public static String app_id = "2021000121667111";// 商户私钥,您的PKCS8格式RSA2私钥
public static String merchant_private_key = "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDisVYxYHtlvuFfJGG0IlYvff/+JCIc5ayv3UbklCnYT7hFs1QdE3o9YA/3+eLJdQBue2Sgaa4wJODXSxRX8ApBg6F8oLm0GYHZF6+8YHmuA/4BYJSxJvWjIilAm4NknvbPqNmqDE0dorElx4jQ0VTtw+hzYqMTq5+sF7rK8S07AgzU1IxiHVQ2N/SHzOUOSm6JtWslChtQX+nEV91BQB32NJT/eqxWsIMQ6nulqHM8/7ROAmm2qOFlk/W0rmtabFzIteWGkEQUN9jduT4DDH1Kr8Cs47BeBp0zl2orBQMJ55ZFjaBwwesVEmyqMgAe797BxNACs9R9pnAjv9OlJ2XJAgMBAAECggEBANlnwYXxRea6PWIFfj5Hf+hkKpINDToxen/e8xJclhUBv3P5G/4Wo/Ego6/qUvlp4FQUutitAYTimU9gjc4YQ325Q7JGYlK687DD6qH61DdzVLL1cSTEfGdLZ8yyWDyzx3g4MyfGTF7TnJji1++MEqtEazXdrxA6VBOzXk0rJ3miG6IYUXh0nc/Q70cWK7ZjqJjh+Fno+wZLKaN+oQwyEpl3QYCq+ceDrekC8GjGDzm1YdjGPZgNu7nUXYkdLsihqbP8KfcDHNEI7cBYDhwdkjVs/ZuiltsDgXEfwLZZOAYKxgQdrblDLN3o+oTg8Tt4zdII8tDOJHQ0fhtjm1VkXAECgYEA8UNre/gl6S5XhvA7EwC64u5J4fQ0LeQTC6T43Dq+grUgaUjn0heGB2N4rzmLsgwYJXA44i39+gfl3KiGBsuOYoPZ0bcX5IK/Nwy7XQXYjIF8Jqi0ghSD7f3TVN1ToCl5wjsc10FfSFG4/XtBDfA0fHGXCRKHReZnJ/PPZlASCmECgYEA8IoUP5wB+4Zf71O9Ni7MqWMahp340lT+UrLx9TO4iFMS/FHBW15w7Mqvhiew7r6+B+zbcPWysT6xHU9eVjrUdBRRRpztYohn1vkH2yOz6Bs0JKkoozGZo2lwqNI48b8RQWpF1QBUY0BigeEZW8VYb5zGDqZEvu/Gf4hRTlL7pGkCgYAsLBrezLUsN0bhNtSqCwUsjVJLo2l2SX7PL/o8YCkHR2BSxn1jMtlgOu8ard+MzrgRCrXve1o30ABe4SAA2H4OPXPA+NPQC7w0uQkI5Awc1YxEi7jY5CaviTyLGia4eT+It0f1hUuLsyK6jjl/8s25RxbPG2xW+PNEFliPs/NJoQKBgQC5c7vozv84TYHpo0ZeX/arIh1xbJpKj/0FBbJGunmroWEh6GaLa2TlK9/oLvHbIHSi55rInKYIwa0MTAUPtovWc1O2fYcIUOK+e4HzErPCYDbzjPgn2jX6J3EUt//vYsCLDsSIVJi7bQiF2mcSujRU2SpaYRbfnz4LVa5aFOCvAQKBgBfmpAl4IPy3gtrt3j4//3kKKBcEuzt5oWnKPLFHPL4OOJGvmdGZV/yPOMXjKQEWsqkdsOlMj4g/6XXhYxTNKysd4EJ6ZkgXeWtC+PBWZ2a5ABuh4lsicLo1JRc1hvOF6Sbm5qxpGmaE5lJYwGerjx7yAcf71i6zL7uVSFW/JNUZ";// 支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。
public static String alipay_public_key = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq2viuLp2UHyQhUk2WFmRs+Q52e0YeSz3WsyegpD7NVvvn9XQjI619NAczbUQprWz6n/DdLFoxYshEBF63y7UxwDJSCKH+S+F1W9oPpqQP7ZhrmB6VP7V7EzyxO90XIoKT37sRa+eXUKBeq1cUhA7dHEdVH3qmF39Mi06825Lqwl35F/vS1dUoCIt/hm9x2F3JfLEArefxMzKi4NeFvZK5KKNDm6+KREmSn8K4L5cFlcRBbgm3oqsv74Tt3goU0tdJNl7WgrxoZD0geLnt6WpCOkezSXTTVk5S0dh0Qnb1Sj4vTXDHr4dJQygaCb9kKhtIIwtfta4AYKrJY+TOq/XmwIDAQAB";// 服务器异步通知页面路径  需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
// 工程公网访问地址使用内网穿透客户端提供的域名:http://489t2i.natappfree.cc:内网穿透的域名
public static String notify_url = "http://489t2i.natappfree.cc/alipay.trade.page.pay-JAVA-UTF-8/notify_url.jsp";// 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
public static String return_url = "http://489t2i.natappfree.cc/alipay.trade.page.pay-JAVA-UTF-8/return_url.jsp";// 签名方式
public static String sign_type = "RSA2";// 字符编码格式
public static String charset = "utf-8";// 支付宝网关(正式环境)
//public static String gatewayUrl = "https://openapi.alipay.com/gateway.do";
// 支付宝网关(沙箱环境)
public static String gatewayUrl = "https://openapi.alipaydev.com/gateway.do";
// 日志路径
public static String log_path = "C:\\";

5.4 测试

①加入web环境,配置Artifacts,启动tomcat,运行index.jsp页面

②后续在支付宝提供的页面上进行操作

支付宝沙箱环境-Demo支付案例相关推荐

  1. 支付宝沙箱环境 电脑支付

    项目场景: java语言,jdk1.8也可以使用 .支付宝沙箱环境电脑支付. 电脑端生成二维码,手机端扫描支付 AlipayConfig: APP 中接收数据代码: package com.hc;/* ...

  2. 支付宝沙箱环境demo测试

    1.获取电脑网站支付的SDK代码 ①下载代码 具体下载地址:https://docs.open.alipay.com/270/106291/ ②介绍具体的代码中文件 ③具体同步回调跟异步回调 同步回调 ...

  3. 支付宝沙箱环境下支付接口的错误

    背景 笔者使用alipay-sdk-PHP-4.9.1调试沙箱环境下的支付宝支付接口时,发现同步通知的验签总是失败,按照官方说明的检查清单做了排查,仍然不能解决. 进入官方的钉钉圈子,咨询后,也没有解 ...

  4. Java支付宝沙箱环境支付,官方Demo远程调试【内网穿透】

    文章目录 1. 下载当面付demo 2. 修改配置文件 3. 打包成web服务 4. 局域网测试 5. 内网穿透 6. 测试公网访问 7. 配置二级子域名 8. 测试使用固定二级子域名访问 在沙箱环境 ...

  5. 免费沙箱软件模拟支付_支付(支付宝沙箱环境配置、测试支付Demo)

    1.注册沙箱环境 (1)概述 首先java的jdk中,并没有提供支付的功能,所以市面上用到的支付都属于第三方,而常用的第三方支付平台:支付宝sdk.微信sdk! 可以使用蚂蚁金服下的沙箱环境进行支付( ...

  6. Vue对接支付宝沙箱环境

    文章目录 前言 一.支付宝沙箱环境是什么? 二.安装所需要的环境 1.引入环境以及工具 2.安装Express框架 3.对接支付宝沙箱环境 总结 前言 此文章仅供学习参考,这里我们对接的环境是Vue. ...

  7. android 支付宝沙箱测试环境,Android支付宝沙箱环境使用教程

    Android支付宝沙箱环境使用教程 网上好多支付宝教程,但是好像没看到支付宝沙箱环境的使用教程,尤其是在做Android支付宝测试的时候,沙箱拿来测试挺好的,正式使用的时候更换里面的个别数据就可以了 ...

  8. SpringBoot集成支付宝沙箱手机网站支付详细流程和踩坑分享

    描述 本文主要讲解SpringBoot集成支付宝沙箱手机网站支付,即网页点击按钮发起支付,跳转到沙箱app付款 由于其他博客的流程大多笼统,有时候并不能找到正确的集成方式,本文尽可能详细的阐述付款,异 ...

  9. 支付宝沙箱环境+SpringBoot+内网穿透整合开发

    目录 1.查看沙箱账号 2.内网穿透 3.沙箱环境整合SpringBoot开发 下面我将以实际案例详细介绍如何使用沙箱环境进行支付宝支付对接的开发 1.查看沙箱账号 首先什么是沙箱账号? 沙箱账号是指 ...

最新文章

  1. PL/SQL编程:用Loop-exit-when-end循环算出5的阶乘
  2. Activity中KeyEvent的传递
  3. [20170419]bbed探究数据块.txt
  4. mysql的基本的查询语句_Mysql的基本查询语句
  5. leetcode542. 01 矩阵(bfs/dp)
  6. C#实现动态系统托盘图标
  7. java取linux本地xml,java-使用apache poi读取.xlsx文件会在Linux机器...
  8. nagios 流量监控和报警的shell脚本
  9. java多线程,java线程同步
  10. 深度学习笔记--激活函数:sigmoid,maxout
  11. 毕设题目:Matlab图像边缘检测
  12. 国外常用免费博客平台
  13. access计算机二级大纲,计算机二级Access考试内容大纲
  14. 西门子S7-1200 HslcommunicationDemo大纲拆解
  15. 卸载mysql5.6.34_5.6.34版本安装后需要做的事项\mysql\.\innodb_table_stats\ not found.-hxl-ChinaUnix博客...
  16. 【C语言】输出斐波那契数列 1 1 2 3 5 8 13 21...(知识点:一维数组、规律分析)
  17. 解决UIScrollView截获touch事件的一个极其简单有效的办法
  18. UPS不间断电源系统安全使用要领
  19. 大数据专业就业岗位有哪些?
  20. flutter flutter_swiper自定义指示器

热门文章

  1. node内存溢出解决方案
  2. 【应用】OPC 通讯协议
  3. Saluton+ 1.0 你值得拥有!
  4. 从荣威RX5 MAX看,智能趋势下屏幕的宿命
  5. MEMS麦克风已成消费市场的主流产品选择
  6. 0.0 Dreamweaver的安装和破解过程
  7. Python Centry异常邮件预警
  8. 超级兔子官方论坛(bbs.pctutu.com)又被挂马
  9. Vivado报错syntax error near
  10. 灵魂拷问!GPT-4来了!人类自媒体博主存在的意义是什么?