fix(verify): 增加 AES 解密函数的 panic 处理

- 在 aesCBCDecrypt 函数中添加 defer 机制以捕获并忽略 panic
- 防止解密过程中因 panic 导致程序崩溃
- 删除 push_redeem.go 中获取订单账户失败时的多余日志打印,优化错误处理流程
This commit is contained in:
danial
2025-11-26 16:15:09 +08:00
parent b87d0ade81
commit a1d058c193
2 changed files with 6 additions and 1 deletions

View File

@@ -373,7 +373,6 @@ func (h *sAppleOrder) processOrderWithAccount(ctx context.Context, orderInfo *en
})
accountInfo, err := service.AppleAccount().GetAccordingAccount(ctx, decimal.NewFromFloat(orderInfo.Balance), keysStr)
if err != nil || accountInfo == nil {
glog.Error(ctx, "获取订单账户失败", err)
return
}

View File

@@ -37,6 +37,12 @@ func AesCBCEncryptWithBase64(ciphertext string, key []byte, iv []byte) (string,
// aesCBCDecrypt AES/CBC/PKCS7Padding 解密
func aesCBCDecrypt(ciphertext []byte, key []byte, iv []byte) ([]byte, error) {
//吸收 panic
defer func() {
if err := recover(); err != nil {
return
}
}()
// AES
block, err := aes.NewCipher(key)
if err != nil {