Commit Graph
4 Commits
Author SHA1 Message Date
xrain aa2af7aee1 refactor: 移除 soulsoft_serialization / soulsoft_net_http 依赖——全部 HTTP 改 stdx.net.http
- SimApiStorage 4 处 S3 请求(PUT 上传/HEAD 检桶/PUT 建桶/POST 删除)改 stdx ClientBuilder/HttpRequestBuilder
- SimApiAuthCenter.verifySign 改 stdx(post + body + 读响应)
- cjpm.toml 删除 soulsoft_serialization、soulsoft_net_http(soulsoft web 栈传递依赖提供序列化)
- S3 全链路实测通过(上传/预签名/删除)
2026-08-18 01:56:32 +08:00
xrain 67f7c16a3f feat: SimApiStorage 增加 deleteFiles 批量删除(S3 DeleteObjects)
- POST /{bucket}?delete + XML 一次删除多个对象(Minio RemoveObjects 同款接口)
- MinIO 强制要求 Content-Md5 头(缺失返回 MissingContentMD5),MD5 经 stdx 计算 + Base64
- 已用 oss.anymemory.cn 实测:批量删除后访问对象返回 404
2026-08-17 00:22:08 +08:00
xrain b4e808e775 fix: SimApiStorage 直接请求补 x-amz-date 签名头,Content-Type 移到 HttpContent
- 直接请求(上传/桶检测/建桶)需带 x-amz-date 请求头并纳入签名(缺省会 400)
- Content-Type 按 soulsoft_net_http 规则设在 ByteArrayContent.headers(不是 request.headers)
- 已用 oss.anymemory.cn 实测:上传/预签名上传/预签名下载回读全部一致
2026-08-17 00:08:50 +08:00
xrain eb488bcd5a feat: 实现 SimApiStorage(S3/MinIO 存储)
- 自实现 AWS Signature V4(HMAC-SHA256 基于 stdx SHA256),无需 Minio SDK
- getUploadUrl / getDownloadUrl(预签名 PUT/GET)
- uploadFile(直接 PUT 上传)、fullUrl / getUrl / getPath
- 构造时检测并自动创建桶(静态守卫只执行一次)
- 注册为 Scoped 以注入 IHttpContextAccessor(soulsoft DI 禁止 singleton 消费 scoped)
- 签名核心已用 AWS 官方测试向量验证(最终签名 5d672d79... 一致)
- README 同步(未实现表移除、新增 5.3 存储章节)
2026-08-17 00:00:15 +08:00