使用Configs.get方法获取支付宝的publicKey是否存在风险?

来源:11-8 支付宝支付回调函数实现与支付宝SDK源码解析

慕粉1469699653

2019-11-18

Configs.get方法直接return了publicKey,可是publicKey只有执行Configs.init时才被赋值
正常来讲是没问题的,因为pay方法中有Configs.init,所以当接收回调的时候publicKey是被赋值的
但是在某些情况下是不是会出现两个问题:

  1. Configs类的生命周期能不能保证从pay方法坚持到回调
  2. 网站在运行当中出现了服务重启的情况,这时,如果网站没有人调用pay方法进行支付,那么重启之前的某些订单的回调是不是就不能验签成功
写回答

1回答

geelylucky

2019-11-18

1.spring在加载OrderServiceImpl的时候,会先执行static代码块,并且OrderServiceImpl不是懒加载,所以任何时候Config.init都会执行。那么第2个问题就不存在。

0
1
慕粉1469699653
哦哦,我看到了源码里面对这个地方进行了更正。视频里面我看到11.8这一节的时候Configs.init还是写在pay方法里的哈,OrderServiceImpl里面没有static代码块。谢谢老师!
2019-11-18
共1条回复

从0开始 独立完成企业级Java电商网站服务端开发

前后端分离,数据库接口设计,架构设计,功能开发,上线运维

9434 学习 · 8789 问题

查看课程