diff --git a/internal/application/api/api_application_service.go b/internal/application/api/api_application_service.go index a120511..6f033ee 100644 --- a/internal/application/api/api_application_service.go +++ b/internal/application/api/api_application_service.go @@ -609,8 +609,6 @@ func (s *ApiApplicationServiceImpl) GetUserApiCalls(ctx context.Context, userID // 转换为响应DTO var items []dto.ApiCallRecordResponse for _, call := range calls { - // 出于安全考虑,不再在数据库中存储或解密真实请求参数 - // 这里只保留数据库中的原始占位值(通常为空字符串) requestParamsStr := call.RequestParams item := dto.ApiCallRecordResponse{ diff --git a/internal/domains/api/entities/api_call.go b/internal/domains/api/entities/api_call.go index efd527a..a9eea89 100644 --- a/internal/domains/api/entities/api_call.go +++ b/internal/domains/api/entities/api_call.go @@ -80,7 +80,7 @@ func NewApiCall(accessId, requestParams, clientIp string) (*ApiCall, error) { AccessId: accessId, TransactionId: GenerateTransactionID(), ClientIp: clientIp, - RequestParams: "", + RequestParams: requestParams, Status: ApiCallStatusPending, StartAt: time.Now(), }, nil diff --git a/internal/domains/api/services/processors/yysy/yysy9e4a_processor.go b/internal/domains/api/services/processors/yysy/yysy9e4a_processor.go index cad567e..6ac0eda 100644 --- a/internal/domains/api/services/processors/yysy/yysy9e4a_processor.go +++ b/internal/domains/api/services/processors/yysy/yysy9e4a_processor.go @@ -39,6 +39,14 @@ func ProcessYYSY9E4ARequest(ctx context.Context, params []byte, deps *processors } } + // 兼容上游有时返回 JSON 字符串的情况:如果是字符串则尝试再反序列化一次 + if str, ok := respData.(string); ok && str != "" { + var parsed interface{} + if err := json.Unmarshal([]byte(str), &parsed); err == nil { + respData = parsed + } + } + // 将响应数据转换为JSON字节 respBytes, err := json.Marshal(respData) if err != nil {