• Spring Boot集成支付宝电脑网站支付功能


    接入准备

    登录

    访问支付宝开放平台: https://open.alipay.com/ 登录后补充开发者信息,然后在 开发接入项 ,点击 网页/移动应用开发 项跳转创建应用。

    创建应用

    填写应用基础信息

    添加能力

    创建应用后,配置应用的能力,在 添加能力 项加入需要的能力,如 电脑网站支付 能力

    生成私钥与公钥

    访问 https://opendocs.alipay.com/common/02khjo 下载密匙生成工具,然后生成公钥与私钥

    开发设置

    设置自己生成的公钥将自己生成的公钥告诉支付宝,支付宝返回一个支付宝公钥最终得到3个密匙: 1.应用公钥 2.应用私钥 3.支付宝公钥

    沙箱环境

    沙箱地址: https://open.alipay.com/develop/sandbox/app

    参考上述 生成私钥与公钥 和 开发设置 ,在接口加签方式处进行设置。最终得到3个密匙: 1.应用公钥 2.应用私钥 3.支付宝公钥

    沙箱账号用于支付测试

    示例Demo的使用与学习

    下载Demo

    在文档中心: https://openhome.alipay.com/docCenter/docCenter.htm 找到需要接入应用类型的对应文档

    或者直接搜索,如 电脑网站支付找到需要文档后,查看文档中的 SDK&Demo 项,下载对应语言Demo,用于学习

    启动项目

    参数配置

    在Demo项目中的 AlipayConfig 类中配置: 应用ID,商户私钥(应用私钥)、支付宝公钥、异步通知、同步通知地址 等参数。

    注意:如果这里使用沙箱环境测试,一定要修改支付宝网关,否则调试错误

    沙箱环境网关为: https://openapi.alipaydev.com/gateway.do 
    
    正式环境网关为:https://openapi.alipay.com/gateway.do 
    复制代码
    1. /* *
    2. *类名:AlipayConfig
    3. *功能:基础配置类
    4. *详细:设置帐户有关信息及返回路径
    5. *修改日期:2017-04-05
    6. *说明:
    7. *以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。
    8. *该代码仅供学习和研究支付宝接口使用,只是提供一个参考。
    9. */
    10. public class AlipayConfig {
    11. //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
    12. // 应用ID,您的APPID,收款账号既是您的APPID对应支付宝账号
    13. public static String app_id = "20166660581647";
    14. // 商户私钥,您的PKCS8格式RSA2私钥
    15. public static String merchant_private_key = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCKNOWSnUMsaeEZZMDy+DvbdUMVTuJ/jQ4Ks8lQEatRjXS7ZWX+NMszQir3HyRWe1q8+8n6ZvJSiMGpS2Ku7ZeTHyZvOB9BTG3vgapDKKJAQ0NYaB3561FaU3ZRnCay5ls50WVCZ82pO//NZ5xRYND53+ZjSvOZi58FV1uKnCEAx8tPZKeGi5c2hQ6epjjzcjsdD/1fZEF5B667AM8nLe3zZWftvBxJe8Z1yoRP/w4aWW451myFViQWaKiWsERz7KAHCJEu+wAyvgqB18MOoNk76svqr71Z0whjrTF/1eEHaoictzMdao8hWYNhveaPA4Ic46rWoBTyHOHdt9p+hF1NAgMBAAECggEAQP39E4RWyeXbYlyw+nq+Y/ch0WP4Q5lFY0iIGSfW2D+P9xp4QHGQNr4mUsxho9BMjU0KyZ41/j5LfpqO0s+abeQgAvwP3WXm9EkgcDP1UulCG74YQmXa7e+ORT3+3Vmt6lC/rY3SurFLl2HNkH1dBHhO2+XpYV/WGDDRFJ/WxI3gFdWF31sqT9n75HsozFtA5vp90ZOq3SxqtQKBgQDZDqfj6Aw5jCI+rPapmp4NISDLUHtcIKKfRx/2yjmCPZ/WCnIW4R7jxyf3rvd4beNMqVHfAhdwISfug5C3n2nZJV4aMY/o52DEH38d2dYqkJX78V+Jaw0vy8DvuxGtVCB/5r3tK4zbza9g2uFPUb9/8QBo3h8KKbjs6haOxBLFqwKBgQCjAKqhTsrZwI0AR1NQ76U558CkR5NbR15pROgzXvzLwnr5L2pOhrf+IEsGOZklXgv727jc907Gp/VlBQrsFU5rPKMc091HdLV7fmsVY/CIb9P+oSGj7nZ5X6O2n3wY2nJzlnWT4+wZSLQDiThuUA+awDe1TZZ4jVX4Y9kDOLwA5wKBgHWhsLEdp8pkPIbU+9SMu80HwBsPYdtawGcrh5IapDIGLaI1BQGLPU9aNjnP88OrYfzA4mLGYmddQKPNX1d0KEwLKUVuyLwC8Pk4zI4j6SImO3JPrGPvxTS66rPBIOJbbkWCijmHWY4hmUMXO/Xdqreup3ctsYqzc8nJTzJN5pKDAoGAQxOuI81BypPjMj8nuQG1E3wcGT5fFEvtPRKfHyyyiMMSSeLKM2Ba7NerJ/eh3u+xrMYBb+TRZQyO/jAyC27FI3oDgYRp5dLQL+6Y8Gd8/xhNu9Xg+w3RcSb7Ptaoga27NXewENjVOp5hfacFMtf9Y+g/xHsWNauruhiUoC/DpfcCgYEA2KjZndyY4iKQg2ia3PrRREZukoTAiYVE36i66YVYhwnrqjP3VRwrrK8kpG/HMhcPYFEuO1d7pKLShoxn10UdDlAX1R7mkFSGS/t8KNp7LqNHaDxL0lWeUq7/WEHn7vxvlHtB3dIB+cuq5iC/VuTvnQhXPOGU/6hgJu1ImuDz5uQ=";
    16. // 支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。
    17. public static String alipay_public_key = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1j83H1RmHZeuLbYyxhWAn80GTK/963/SnGHfZAujXsB4/EWn+BqHK6zOmBwXAZAsvjrG+oFakMagANwBVEpwIHF7o9DdX6skYlyO2HRfc/XZMKBg1snAXA/OBjUjTcKTeFJx75zezxgTwrHl3MSrXEr4WnGPAxu+jC9cFrsFdTTGz1gp4K25OBbsSNFdEnqaVbWmJT/U0wAAE8eOcHSk5TYgQfmvqFLuSpjOwDWF0m6/Ymr7EKagsBvtb/Y+IUyQKWi62nqJrDbuduaRiC43hUp6nU3E2VNDuxdexkuQF/cjz5l3/GEeRtFgb00RmkmjtnC+FwIDAQAB";
    18. // 服务器异步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
    19. public static String notify_url = "http://localhost:8080/alipay.trade.page.pay-JAVA-UTF-8/notify_url.jsp";
    20. // 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
    21. public static String return_url = "http://localhost:8080/alipay.trade.page.pay-JAVA-UTF-8/return_url.jsp";
    22. // 签名方式
    23. public static String sign_type = "RSA2";
    24. // 字符编码格式
    25. public static String charset = "utf-8";
    26. // 支付宝网关
    27. // public static String gatewayUrl = "https://openapi.alipay.com/gateway.do";
    28. public static String gatewayUrl = "https://openapi.alipaydev.com/gateway.do";
    29. // 支付宝网关
    30. public static String log_path = "C:\\";
    31. //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
    32. /**
    33. * 写日志,方便测试(看网站需求,也可以改成把记录存入数据库)
    34. * @param sWord 要写入日志里的文本内容
    35. */
    36. public static void logResult(String sWord) {
    37. FileWriter writer = null;
    38. try {
    39. writer = new FileWriter(log_path + "alipay_log_" + System
  • 相关阅读:
    数据库基础
    使用 Learner Lab - 使用 Lambda 转换图片为 base64 格式
    .net framework中webapi使用swagger进行接口文档展示
    nodejs+vue+elementui高校师资管理系统开发java python php
    【NI国产替代】高速数据采集模块,最大采样率为 125 Msps,支持 FPGA 定制化
    Spring Boot 整合 Camunda 实现工作流
    工业4.0时代数字化工厂的几个特点
    【 C++ 】模板初阶 —— 函数模板、类模板
    面试题12:矩阵中的路径(回溯法)
    经典算法系列之(六):七大查找——树表查找
  • 原文地址:https://blog.csdn.net/java_lujj/article/details/126866719