refactor: 对齐 simapi-net 的 20 项差异

- SimApiLoginItem._types 默认 [user]
- 新增 SimApiIdOnlyRequest
- errorWhenNone 改名 errorWhenNull
- SimApiAuth.update 保留 TTL(Redis ttl/expire)
- SimApiCache: set 接受 Any + 新增 get<T>/getString
- SimApiHttpClient 签名字段移出 Options
- SimApiUtil: md5/sha1 支持 mode + 新增 paginate
- @SimApiAuth 支持逗号分隔多类型
- Logger: 4 位毫秒 + IsEnabled 恒 true
- 删除 /versions 端点;exceptionHandler 改为抛错
- UseSimApi 中间件顺序对齐 .NET
- README 同步更新
This commit is contained in:
2026-08-16 23:44:52 +08:00
parent 40e0726087
commit 92eea3108a
17 changed files with 142 additions and 76 deletions
+7 -4
View File
@@ -48,7 +48,7 @@ public class SimApiLogger <: ILogger {
}
public func isEnabled(logLevel: LogLevel): Bool {
logLevel != LogLevel.Off
true
}
/**
@@ -96,7 +96,7 @@ public class SimApiLogger <: ILogger {
let hour = pad2(dt.hour)
let minute = pad2(dt.minute)
let second = pad2(dt.second)
let millis = pad3(dt.nanosecond / 1000000)
let millis = pad4(dt.nanosecond / 100000)
"${year}-${month}-${day} ${hour}:${minute}:${second}:${millis}"
}
@@ -107,11 +107,14 @@ public class SimApiLogger <: ILogger {
"${v}"
}
private static func pad3(v: Int64): String {
private static func pad4(v: Int64): String {
if (v < 10) {
return "00${v}"
return "000${v}"
}
if (v < 100) {
return "00${v}"
}
if (v < 1000) {
return "0${v}"
}
"${v}"