resolve checks if the provided URL resolves successfully.
(source url.URL)
| 122 | |
| 123 | // resolve checks if the provided URL resolves successfully. |
| 124 | func resolve(source url.URL) bool { |
| 125 | resp, err := http.Get(source.String()) |
| 126 | if err != nil { |
| 127 | return false |
| 128 | } |
| 129 | defer resp.Body.Close() |
| 130 | |
| 131 | _, err = io.Copy(io.Discard, resp.Body) |
| 132 | return err == nil && (resp.StatusCode >= http.StatusOK && resp.StatusCode < http.StatusMultipleChoices) |
| 133 | } |