diff --git a/config.json b/config.json index 217392f..202f0ac 100644 --- a/config.json +++ b/config.json @@ -1,7 +1,7 @@ { "method": "GET", "url": "https://example.com", - "no_proxy_check": false, + "no_proxy_check": true, "timeout": 10000, "dodos_count": 50, "request_count": 1000, diff --git a/utils/types.go b/utils/types.go index 577e4de..92f65b9 100644 --- a/utils/types.go +++ b/utils/types.go @@ -65,12 +65,17 @@ func (o *option[T]) SetNone() { } func (o *option[T]) UnmarshalJSON(data []byte) error { - if string(data) == "null" { - o.none = true + if string(data) == "null" || len(data) == 0 { + o.SetNone() return nil } + + if err := json.Unmarshal(data, &o.value); err != nil { + o.SetNone() + return err + } o.none = false - return json.Unmarshal(data, &o.value) + return nil } func NewOption[T NonNilT](value T) *option[T] {