验签遭遇异常,content=null sign=null 支付宝生成支付订单报错【解决办法】

在支付宝沙箱支付中,在测试创建一个交易订单时可能会产生如下的报错信息:

2023-06-27 08:57:30.795 ERROR 20708 --- [           main] com.alipay.easysdk.kernel.util.Signer    : 验签遭遇异常,content=null sign=null publicKey=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhShAMppS4BktsC4nlEX0V1BM1b5/wKy8wzUEIoHjUxrV9r08AzpIbqSnh4zXjmcsb2olHxlVFJsCnthxB1ev3qEx6qPwBxTYJdr8FdsEuhqCO5+i4YPDxZrjgSh+skcUFkNI6JkeRSLF3604od8rWI2AaqgLl9OSB0g9rvp1MrTNwiAJb9jMhvC6yYxCGpdnnov1rlt0WhqiMpfs/FQdRUkdUFRnmxwgSc9vwWN3FF7y5CzM6nv0EvIJiOMcNe0eSPAxVSe+bcNQ2gi8oVZ3NpdOGGs93xA0JEFva2AgQ5NF6t/ioe9RSdpQe0gVhyN8CC+BDuhonVhYqbzC4IQ2TwIDAQAB reason=null

只要是支付时出现验签遭遇异常,主要是因为支付配置类中的属性配置问题:
在这里插入图片描述
在上述中都是需要在支付宝配置类中进行替换的属性值,支付宝配置类如下


```java
/**
     * 获取支付宝的配置(沙箱环境)
     *
     * @return 支付宝的配置
     */
    public static Config getConfig() {
    
    
        Config config = new Config();
        config.protocol = "https";
        // 替换为自己的网关的地址    openapi-sandbox.dl.alipaydev.com
        config.gatewayHost = "openapi-sandbox.dl.alipaydev.com";
        config.signType = "RSA2";
        // 替换为自己的APPID号
        config.appId = "9021000122694432";
        // 为避免私钥随源码泄露,推荐从文件中读取私钥字符串而不是写入源码中
        config.merchantPrivateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCKv1qqx0m79LNnU9mAF4pfi9AwvYu8ueCpdTsen3yK6N04fzAD62nu2KJD/8+nBfaIJpEgZhHQn7q3n4Tqiu6QgAnqIFONKHqX8pSQ+76YXLyCNgXAU5Pe8m6XB3o6aRhMXumhLqu6+PXMFmU/xu0RWTkm8Sza90WjpkyD4Es8u2yth3Ufy+v+roAziCHg+V3lxZqasbhDb4tGc2XtoiYs/A1jsh3ewpYyoZpMvgdITQwS/fZsHnN7TpBn/URCufHKhjjfW2VEQlAKnHVqBYH5RZX8kmmPUPrrtSDVF+kYQ8M0fx4cw9WPYODPp9sk5HXSrAHKdFCpzPR3liexAniFAgMBAAECggEABM7Stn5HaNL28IqwS8cFDYCLy1SWJgkO5vBgBxShvTKKj+2gXVJoDlXFcbPIn1IOk/M6LjQ7Q851Ku3FLld4Itu8/Db4jjir3t4SFeATX7Y+9ggnNN3wjtY5zNP+gU2pAOR9Fg/G9aiw48yW35nmFybPWzEaS9Arwpr9pcg88zLCZoEHbwB5LgLGYPmt4dgNRtb3KyFA7bMZQMR34bfKutukJ4Irrl2UZJxgDTHbSpPLwUbjAmlg8tHmGOMSxXWba0iSwZlT6aiOx1OoUST76UzBeOFgss2TBVqtlK/ANflg8ma3zoEMi2LAS42A/KQ7NRfJymO11tdwgLhRnfHctQKBgQC9TLv+A2QD9Kb2emUtC1v+tqeHxXCnVuVK2zP2m8WEJRvETZUF5TvMgYXuKk8kaVnvIcllRtDrX/aAsHKJkZGZktsyP140y9UR0prLTAcynmwWsEYcDPPWXKuTVtqv5jdPFr/5IypEz/X+H5o+MWJMDd+DLe9DzUxCANoA9oPt7wKBgQC7orDeehdmWZ5vCQ1xHKOrvKxx9nXtiIyfzMlzW14ar8unwlJkOsPpklwwhd4XdwG63NemFDzOw29nqsjhLyRps8enWjPNuWqZ4LUp+Gv8W1aJJWyz2AEtspRwJLKVGRHfkY2/RXsC48tqJlM3e1F7ki97GMy3zdEk+aEr/zP0ywKBgQCKFnLAXjrUQ+CTxj8N985Y5WcaPKXr/BBxZavnRkR0HBnAPhPqZAkWKpnHXaez2QIY1d2y+lCmkq8fuxciUUUT8TPi2KThAJviT25JxKEvhK82ccoC5lPtWFZ0uZP3YomQMPlDRSqtXcKFaQo8OgwJjMkySQzTuevZ7gMZVrpwkwKBgBSa+CtmYv11aAWvi89ZIswwSwu00hyEu1StK45EgWAS4B2LJHsnTO5wiTk26j3Pbtwzdmchn8/g/HH4+lhoUepduNYy/K9h5kgBukNiqZEsAqPK/VX+qZp4Gv75uLbQ6vqPRG611Z1qoKMGlGrqWvdkBVzSS2D/9DDITR/ExdLjAoGAAt5gWEY9S6Ap4blLDovwnmxwCUwrAziYt4VvUnf2OQM3ij+wlihbIoleTymVACR5UWw8Ecv3xgQv2w5rTYNF27b9gFmWyigDiAJVeQhLYT1/VQJVJxi3cYuAYBHoD0v4iXtbcGTU65dp4EjUm61cnsTjlw=";
        //注:证书文件路径支持设置为文件系统中的路径或CLASS_PATH中的路径,优先从文件系统中加载,加载失败后会继续尝试从CLASS_PATH中加载
        // config.merchantCertPath = "<-- 请填写您的应用公钥证书文件路径,例如:/foo/appCertPublicKey_2019051064521003.crt -->";
        // config.alipayCertPath = "<-- 请填写您的支付宝公钥证书文件路径,例如:/foo/alipayCertPublicKey_RSA2.crt -->";
        // config.alipayRootCertPath = "<-- 请填写您的支付宝根证书文件路径,例如:/foo/alipayRootCert.crt -->";
        //注:如果采用非证书模式,则无需赋值上面的三个证书路径,改为赋值如下的支付宝公钥字符串即可
        config.alipayPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhShAMppS4BktsC4nlEX0V1BM1b5/wKy8wzUEIoHjUxrV9r08AzpIbqSnh4zXjmcsb2olHxlVFJsCnthxB1ev3qEx6qPwBxTYJdr8FdsEuhqCO5+i4YPDxZrjgSh+skcUFkNI6JkeRSLF3604od8rWI2AaqgLl9OSB0g9rvp1MrTNwiAJb9jMhvC6yYxCGpdnnov1rlt0WhqiMpfs/FQdRUkdUFRnmxwgSc9vwWN3FF7y5CzM6nv0EvIJiOMcNe0eSPAxVSe+bcNQ2gi8oVZ3NpdOGGs93xA0JEFva2AgQ5NF6t/ioe9RSdpQe0gVhyN8CC+BDuhonVhYqbzC4I";

        //可设置异步通知接收服务地址(可选)
        config.notifyUrl = "https://www.test.com/callback";
        //可设置AES密钥,调用AES加解密相关接口时需要(可选)
        config.encryptKey = "m4ZPLAvbm17F3PTE8YUASQ==";

        return config;
    }

在以上的配置类中有几个参数是一定要改为自己的参数 具体参照如下
在这里插入图片描述
以上参数全部更改为自己的参数值就可以了,遇到的问题也就迎刃而解了!


猜你喜欢

转载自blog.csdn.net/Coastlise/article/details/131409446
今日推荐