修改获取路径
This commit is contained in:
		| @ -234,13 +234,15 @@ public class UserServiceImpl implements IUserService { | ||||
|     public LoginResponse alipayMiniProgramLoginOrReg(AlipayMiniProgramRegRequest alipayMiniProgramRegRequest) { | ||||
|         try { | ||||
|  | ||||
|             //2.获取openId | ||||
|             String openId = alipayInteg.getUserInfoByAuthCode(alipayMiniProgramRegRequest.getAuthCode()); | ||||
|  | ||||
|             // 1. 获取手机号 | ||||
|             String phoneNumber = alipayInteg.getPhoneNumberFromEncryptedData(alipayMiniProgramRegRequest.getEncryptedData(), alipayMiniProgramRegRequest.getSign()); | ||||
|             if (StringUtils.isBlank(phoneNumber)) { | ||||
|                 throw new BizException("支付宝小程序登录失败,无法获取用户真实手机号"); | ||||
|             } | ||||
|             //2.获取openId | ||||
|             String openId = alipayInteg.getUserInfoByAuthCode(alipayMiniProgramRegRequest.getAuthCode()); | ||||
|  | ||||
|  | ||||
|             // 3. 查询用户是否存在 | ||||
|             LambdaQueryWrapper<BaseUserPO> queryWrapper = new LambdaQueryWrapper<>(); | ||||
|  | ||||
| @ -12,7 +12,11 @@ import com.alipay.api.response.AlipaySystemOauthTokenResponse; | ||||
| import com.sczx.user.exception.BizException; | ||||
| import lombok.extern.slf4j.Slf4j; | ||||
| import org.springframework.beans.factory.annotation.Value; | ||||
| import org.springframework.core.io.ClassPathResource; | ||||
| import org.springframework.stereotype.Component; | ||||
| import org.springframework.util.ResourceUtils; | ||||
|  | ||||
| import java.io.IOException; | ||||
|  | ||||
| @Slf4j | ||||
| @Component | ||||
| @ -130,11 +134,11 @@ public class AlipayInteg { | ||||
|             //设置签名类型 | ||||
|             alipayConfig.setSignType(signType); | ||||
|             //设置应用公钥证书路径 | ||||
|             alipayConfig.setAppCertPath(appCertPath); | ||||
|             alipayConfig.setAppCertPath(getRealPath(appCertPath)); | ||||
|             //设置支付宝公钥证书路径 | ||||
|             alipayConfig.setAlipayPublicCertPath(alipayCertPath); | ||||
|             alipayConfig.setAlipayPublicCertPath(getRealPath(alipayCertPath)); | ||||
|             //设置支付宝根证书路径 | ||||
|             alipayConfig.setRootCertPath(alipayRootCertPath); | ||||
|             alipayConfig.setRootCertPath(getRealPath(alipayRootCertPath)); | ||||
|  | ||||
|             AlipayClient alipayClient = new DefaultAlipayClient(alipayConfig); | ||||
|  | ||||
| @ -143,7 +147,7 @@ public class AlipayInteg { | ||||
|             tokenRequest.setGrantType("authorization_code"); | ||||
|             tokenRequest.setCode(authCode); | ||||
|             log.info("获取支付宝access_token请求参数: {}", tokenRequest); | ||||
|             AlipaySystemOauthTokenResponse tokenResponse = alipayClient.execute(tokenRequest); | ||||
|             AlipaySystemOauthTokenResponse tokenResponse = alipayClient.certificateExecute(tokenRequest); | ||||
|             log.info("获取支付宝access_token返回结果: {}", tokenResponse.getBody()); | ||||
|  | ||||
|             if (!tokenResponse.isSuccess()) { | ||||
| @ -157,4 +161,26 @@ public class AlipayInteg { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取证书文件的真实路径 | ||||
|      * @param path 配置的路径 | ||||
|      * @return 真实路径 | ||||
|      */ | ||||
|     private String getRealPath(String path) { | ||||
|         try { | ||||
|             if (path.startsWith("classpath:")) { | ||||
|                 String resourcePath = path.substring("classpath:".length()); | ||||
|                 ClassPathResource resource = new ClassPathResource(resourcePath); | ||||
|                 String realPath = resource.getFile().getAbsolutePath(); | ||||
|                 log.info("获取证书文件路径: {}", realPath); | ||||
|                 return realPath; | ||||
|             } else { | ||||
|                 return ResourceUtils.getFile(path).getAbsolutePath(); | ||||
|             } | ||||
|         } catch (IOException e) { | ||||
|             log.error("获取证书文件路径失败: {}", path, e); | ||||
|             throw new BizException("获取证书文件路径失败: " + path); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| } | ||||
| @ -74,7 +74,7 @@ wechat: | ||||
| alipay: | ||||
|   miniapp: | ||||
|     appid: 2021005174658269 | ||||
|     privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCs8bglD1hj36054iZA7R42Sn41mR6cn2EwcRVWbAAcAjkGgkwIu8CbnTgFdKmCmpqIInoBFPAGSIPPh3IIxV8TdUTz6gwW1ep8dpkuF935f1VA2pELPQd5HYhuMaedtjFA4AQ4zrPT3ZR82J4bTQfJTnJER/OMmQhzK4Z4aBsgEbWA+kuFexApGFBiqngTGB3gtfqqcos8v3SQlWRCcdwmSn6sKhDnNLplRcTZ3/YbNjvGL3e5NTYIsyJntWLY5nWDvFj7INDNMD8Kx694l5beszpPzIGOUQnCzLAQvlyjdiqklQgwh798uOFFGCP4lSrnDSxGpvf4KzBAciOBzvVDAgMBAAECggEAeunoyF4ZohHs2cDDE03zNP7IqGtE+GfF+VnFooBrq3xg7yFXzLUz9OVOVYJOn0YmIi7uqyooVS7gj3RiNZ2hLwEfmoNzSB+M4hygTcQkvRgkjU1J3MTpNMkql7auvEYqx0LvfThbUm6fBAQoipq6t/YK/EBu9jQlb0U18wl6jdUdHWY1imybltwaq3RA9efSwehovhP5NsZmDWg7piViPizzRe0vQCDNx+yKXZF5v33HgWaoxuIuEzioO/lCCtki8JLFe5rmELXHob8P956zYUm3AQE7+Dy80kIwHzSsDjKOWnBgSivDPf7u3D7aMZ21BM8b2VGU3ogUlznTzvJQ8QKBgQDVczfuhW4Ii81G4qOM+kEei4OrhmYQfk6CmTqLAsTb1dNcH06Ff791miPGJ6tWqIy6+Q1OVWID7BoHBu9UgwpVxRFKDGGFEQb2J67auQCb57CWNZx8w/4R/OnVSZ4WvoOPiokq/f6bJH7Snk6Zj806MjTXgO+6sFfjAB9srF3jlQKBgQDPa2gOZtQGBgHw2MYdyu7Y2aXCAgBp7ruI02iPrNLjvJnoHDpTJjUYmbLWyx1xnZnHVR5TCtZB4MNMZnhwbiKpsF5omxf4/31zc7JzQPoD/VjME8+LeJekW5telwqUCK4qKUcWLbW1QfSUwyNVnyN4QsQfp7W7fmLSfi+ACGa/dwKBgHY8l7wBn30ObAybGLvMGGxiHfLSxRDX1oeTd5FvXDrmTGlYUjezFwx+8NggO1IKlcIwmYVN2LiRfa1s0wA+gmgWfMhG6XI7h16thrdUCZlTE0dxtRiLvN6b+a+TUwYITHoj5G2zOukXo0TqOmHn/WgCTbEelC0W5+gvtjiNloitAoGBAIUGXlr2Kb6fNblwXUcYMiyTEZKmU/ucZ1uuMh4K+cmi2JYbHHDdTSo00JSe+Yg3Sjuj5Gnfxl/DtZ0XDuEUUVjAyxuNdEd2G8/igK0YHABZCA0CG5ZYRfDb634zok4kbwaNKJEZybKw1RpfOBcek9H6B+xBU/UmblyPHwme2b6rAoGADXnDQBlMmYKrK8+34E28E0tiUr7UAc6t86ZnzVoUEdZEkJ5EwRraR/QBqumu7/B0SrcME9VZH1P++BYnsR0lZLlu+CE54UJ1fSopjExpcAluIgZ2FkrKFLm0qGdzt58AW7SK4lFECJKdQaS9ZogVx7+htQ6vyv3bVv21u2FJ3Is= | ||||
|     privateKey: MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCQke+mZsxNXJXMn2iUZRkhITWY9qPczwHMgRxl68JRuNzZE2AXhAc2ciF7EGob1y0al4hvJo5JUrDew9Zkv0BocAsPjLma3A9KFgj131xMuLxVvHtktkNSwwW9VIbOOhFAQAy3J9jt8PdEk40UONyu9J5Shjs6jbQ8RogdDuwuzKpNj0ZOTeUqgR6RME4xZ0VqvZe9XhVfq3QtVGttUzOpLPNg6boBy/5RqwC64lVFICMqjKkMW2NklVPBDFO46QwfWEbaA+APnd9bd+9WadyNySPb7kAK8GOlvZYfysy+QkOQdj/oebKWKzdKXpFnF+n52dYzeGTvckt1suDngwAFAgMBAAECggEAcPc39iTZe5HfE9d0FpCxBCw4/1+qRz4SP8SbdiC05Lq5B36WVYm7QRYJh2oaH8sR2XeTCpdsE2tj/Y21l1/Calkyq2HhHlraL5/sPIPeUa0ArVXsbZPmI2N0tq6376l8FWJ3DR876SGjdZh+YtDT0HogxIdS/LwBnB/Y+CvS7fWcqiMjcR4h28RU70CQqxpzYuPfqG6GZmByGyJAcdlhFAYgiksb+qZnkjoaKHsjb61xfUX4z+HGdQLqOlVKfNqIpiO7arXaeAb0RQiB8Lqi7fBvn8LLhlTmM1Hr4gyQO14lJmP5Vp2BIg9m5AC9vRkpZ9l79bUTIepDe9+Ovcx5eQKBgQDWZ5yoz8q8Z5VIfMSVTHO3wpfwOBM92S2c21hTsds7NezsMVqGcTuAcvbMW2i1MwxtS7kahXraRAxZnCDB9ZVJs+88xcgu5QJWZ1rJyrwEwB2gTQhColv+XZW6Ck/J6kk2/PG26rNQG6pg/xrKaMtPnXXyKCsdQTyEpr+mlNIJ2wKBgQCsnf4lIuwftCSm0jI73tO1Bb4U9TCIapKidnIhutbyg6u+hJMUTVDNkjsBnrTN24sSP7Cu4Zs/W4lkDqq86fHNEvnF+FouIfO/CwaGteDBNwXHSLM0D+zEBbK04bfoYi7lYZeDRPygFrM49Sxkp0MAmItDmXqbYRQBlhN1XVzznwKBgQCQ+72fFex1XOJBA0X345v4rlkKMxEn6J2EjXr8FbA3KO8OhQ0/DoD7CkLDzChRJ7UGj4cbXRnHUO69BevM3SHXlhp4ERKeS3Q6M2fcPwDHgZZHGPA2Bw6IQoaGKITt+EUMLx3Q4ILi7+JV9wwJxbV+H+9rEiidfsjKtuuwXMBvswKBgQChpElrCSrH/W8c8FSuD9l7+GapRXkvJW0uyW/S+h1yd66J96erKUNzXW339GAnLWErs4yGFynDyLn9gmaMBR6zBQP0SL5Z2N1hlreDyikvhZDZrtBw/kCexx8zlvMan2Z+0kaJXD6cwuUNfzkVADQUCMTQhpZzjhKn8ZtDGiyCzQKBgQCAhU0khG/ufZfQ089+1G7PAlErBr5MQaG40a2vfIWGtHkYyXq5N/3jow1bd2qsyLuz8mr2sWQeURK+B2xZridf6JtYz3gB+dLw0frlLKk4Q6jeehiRlE8H8tIYe/7KcgTmdIzEbo3lmyGMFAILvr/pSCWeUehQYR9PH91Qyi+Tog== | ||||
| #    publicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArPG4JQ9YY9+tOeImQO0eNkp+NZkenJ9hMHEVVmwAHAI5BoJMCLvAm504BXSpgpqaiCJ6ARTwBkiDz4dyCMVfE3VE8+oMFtXqfHaZLhfd+X9VQNqRCz0HeR2IbjGnnbYxQOAEOM6z092UfNieG00HyU5yREfzjJkIcyuGeGgbIBG1gPpLhXsQKRhQYqp4Exgd4LX6qnKLPL90kJVkQnHcJkp+rCoQ5zS6ZUXE2d/2GzY7xi93uTU2CLMiZ7Vi2OZ1g7xY+yDQzTA/CseveJeW3rM6T8yBjlEJwsywEL5co3YqpJUIMIe/fLjhRRgj+JUq5w0sRqb3+CswQHIjgc71QwIDAQAB | ||||
|     appCertPath: classpath:crt/appCertPublicKey_2021005174658269.crt | ||||
|     alipayCertPath: classpath:crt/alipayCertPublicKey_RSA2.crt | ||||
|  | ||||
		Reference in New Issue
	
	Block a user