- 依赖:新增 simapi_serialization path 依赖(保留 soulsoft_serialization 供 soulsoft web 栈传递使用) - SimApiJson.json / SimApiUtil.json → JsonSerializer.Serialize - SimApiUtil.fromJson / base64DecodeTo → JsonSerializer.Deserialize(去 ISerialization 约束) - SimApiHttpClient signQuery/aesQuery/aesSignQuery/query → 去约束,反序列化换新库 - SimApiBaseResponse/SimApiDataResponse/SimApiLoginItem/AesBodyRequest/AuthSDK DTO → 去 @Serialization 宏/去 soulsoft 接口,改纯 POCO(simapi_serialization 反射) - SimApiBaseResponse 标 @SerializerParent:子类响应序列化包含 _code/_message - SimApiResultWriter / SimApiExceptionMiddleware → 响应输出走 simapi_serialization(统一 _code/_message 格式) - SimApiRequestLogMiddleware 截断 → Deserialize<HashMap<String,Any>> + 重序列化 - SimApiAuthDto JsonValue 字段 → HashMap<String,Any>;SimApiCache.get<T> 去约束 - webdemo:AuthController readFromJson 换 Deserialize;cjpm.toml 补依赖 - 验证:webdemo 启动正常,GET/POST 接口响应格式统一,S3 存储全链路 OK
39 lines
1.0 KiB
Plaintext
39 lines
1.0 KiB
Plaintext
/*
|
||
* Copyright (c) 2025 SimcuTeam. All rights reserved.
|
||
* 移植自 C# 项目 SimApi(E:\simcu\simapi-net),遵循 MIT 许可证。
|
||
*/
|
||
|
||
package simapi.communications
|
||
|
||
/**
|
||
* 带任意对象数据的响应(非泛型版,供响应自动封装使用)。
|
||
*
|
||
* 与 SimApiResponse<T> 的区别:data 为 Any(运行时类型不定),用于
|
||
* SimApiRequestDelegateFactory 派发结果时统一包装 DTO/数组/动态结构。
|
||
*
|
||
* 序列化/反序列化由 simapi_serialization 反射处理:
|
||
* - data 为对象/数组/标量,反射递归
|
||
* - data 为动态结构(HashMap<String, Any>)同样反射支持
|
||
*/
|
||
public class SimApiDataResponse <: SimApiBaseResponse {
|
||
public var _data: ?Any = None
|
||
|
||
public init() {
|
||
super()
|
||
}
|
||
|
||
public init(data: Any) {
|
||
super()
|
||
this._data = Some(data)
|
||
}
|
||
|
||
public init(code: Int64, message: String) {
|
||
super(code, message)
|
||
}
|
||
|
||
public init(code: Int64, message: String, data: Any) {
|
||
super(code, message)
|
||
this._data = Some(data)
|
||
}
|
||
}
|