diff options
| author | s <[email protected]> | 2025-11-07 12:32:24 -0500 |
|---|---|---|
| committer | s <[email protected]> | 2025-11-07 12:32:24 -0500 |
| commit | eeb3f677cae9c13440e868a83c0a621c5b22b0b5 (patch) | |
| tree | 6beddb2f2c65bc09f194fcaca28b25a6b7dd1cd8 /internal/client | |
| parent | 7d63867f365163f149db5d768c71f518f9eaf711 (diff) | |
| download | dborg-eeb3f677cae9c13440e868a83c0a621c5b22b0b5.tar.gz dborg-eeb3f677cae9c13440e868a83c0a621c5b22b0b5.zip | |
feat: add show-only flag to filter dns tld results by existence status
Diffstat (limited to 'internal/client')
| -rw-r--r-- | internal/client/dns.go | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/internal/client/dns.go b/internal/client/dns.go index 08449e0..9f9d4e8 100644 --- a/internal/client/dns.go +++ b/internal/client/dns.go @@ -2,6 +2,7 @@ package client import ( "bufio" + "context" "encoding/json" "fmt" "net/http" @@ -14,6 +15,12 @@ func (c *Client) CheckDNSTLDStream(params *models.DNSTLDParams, callback func(re term := url.PathEscape(params.Term) fullURL := c.config.BaseURL + "/dns/tld/" + term + if params.ShowOnly != "" { + queryParams := url.Values{} + queryParams.Set("showOnly", params.ShowOnly) + fullURL = fullURL + "?" + queryParams.Encode() + } + req, err := http.NewRequest(http.MethodGet, fullURL, nil) if err != nil { return fmt.Errorf("failed to create request: %w", err) @@ -21,7 +28,10 @@ func (c *Client) CheckDNSTLDStream(params *models.DNSTLDParams, callback func(re req.Header.Set("User-Agent", c.config.UserAgent) - resp, err := c.httpClient.Do(req) + streamClient := &http.Client{} + req = req.WithContext(context.Background()) + + resp, err := streamClient.Do(req) if err != nil { return fmt.Errorf("request failed: %w", err) } |
