feat(httpx): 并入 go-hua/httpx 的 ParseXML 并补齐单元测试
- ParseXML(XML 请求体绑定, 空请求体返回 nil)为 zogo 版本唯一缺口, 从 go-hua/httpx 并入; 顶层 README 同步补充说明 - 移植 go-hua 全套 httpx 测试(CodeMsg/OkJson/ErrorJson/四种绑定/Validate/ ParseXML)并新增 Handle/HandleResult/空 body 用例; 修正 README 中 wsc.New 笔误为 New
This commit is contained in:
+12
-1
@@ -8,7 +8,7 @@ Gin 服务的统一出入参收口。
|
||||
|
||||
- `OkJson(c, data)` —— 成功出参
|
||||
- `ErrorJson(c, err)` —— 错误出参;`*CodeMsg` 携带的错误码**透出**(如 401),其余错误折叠为 code 1
|
||||
- `wsc.New(401, "未登录")` 构造带码错误
|
||||
- `New(401, "未登录")` 构造带码错误
|
||||
|
||||
## Handler 收口
|
||||
|
||||
@@ -29,3 +29,14 @@ binding tag 校验(`bindingValidator`,与 gin 同源 tag 名)。
|
||||
json 字段的 required)。**引入本包即全局生效**,服务内不要绕过 Parse 自行 ShouldBind。
|
||||
- 请求结构体可实现 `Validate() error` 接口做自定义校验,在 binding 校验之前调用。
|
||||
- body 解析用 `json.NewDecoder` 直解,不触发 gin 内部校验。
|
||||
|
||||
## ParseXML(自 go-hua/httpx 并入)
|
||||
|
||||
XML 报文(如第三方回调)不在 Parse 主流程内,按需显式调用:
|
||||
|
||||
```go
|
||||
if err := httpx.ParseXML(c, &req); err != nil { ... } // 空请求体返回 nil
|
||||
```
|
||||
|
||||
单元测试覆盖 OkJson/ErrorJson/四种绑定/Validate 失败/ParseXML/Handle/HandleResult
|
||||
([httpx_test.go](httpx_test.go),自 go-hua/httpx 移植并扩充)。
|
||||
|
||||
Reference in New Issue
Block a user