Compare commits

..

No commits in common. "main" and "v0.0.4" have entirely different histories.
main ... v0.0.4

3 changed files with 4 additions and 58 deletions

2
do.go
View File

@ -12,7 +12,7 @@ func Do(req *http.Request) (*http.Response, error) {
}
func ParseJsonResponse[T any](resp *http.Response) (*T, error) {
if resp.StatusCode/100 != 2 {
if resp.StatusCode/100 == 2 {
return nil, fmt.Errorf(
"request '%s' returned status code %s\nOutput: %s",
resp.Request.URL.String(),

View File

@ -92,17 +92,6 @@ func Query(keyValuePairs ...string) RequestModifier {
}
}
func RemoveQuery(keys ...string) RequestModifier {
return func(r *RequestBuilder) *RequestBuilder {
q := r.URL.Query()
for _, key := range keys {
q.Del(key)
}
r.URL.RawQuery = q.Encode()
return r
}
}
func QueryMap(query map[string]string) RequestModifier {
return func(r *RequestBuilder) *RequestBuilder {
q := r.URL.Query()
@ -121,7 +110,7 @@ func Method(method string) RequestModifier {
}
}
func AddHeaders(keyValuePairs ...string) RequestModifier {
func Headers(keyValuePairs ...string) RequestModifier {
if len(keyValuePairs)%2 != 0 {
panic("keyValuePairs must have an even length")
}
@ -134,30 +123,7 @@ func AddHeaders(keyValuePairs ...string) RequestModifier {
}
}
func RemoveHeaders(headers ...string) RequestModifier {
return func(r *RequestBuilder) *RequestBuilder {
for _, header := range headers {
r.Header.Del(header)
}
return r
}
}
func RemoveAllHeaders() RequestModifier {
return func(r *RequestBuilder) *RequestBuilder {
r.Header = make(http.Header)
return r
}
}
func Headers(keyValuePairs ...string) RequestModifier {
return chainMods(
RemoveAllHeaders(),
AddHeaders(keyValuePairs...),
)
}
func AddHeadersMap(headers map[string]string) RequestModifier {
func HeadersMap(headers map[string]string) RequestModifier {
return func(r *RequestBuilder) *RequestBuilder {
for key, value := range headers {
r.Header.Add(key, value)
@ -166,18 +132,8 @@ func AddHeadersMap(headers map[string]string) RequestModifier {
}
}
func HeadersMap(headers map[string]string) RequestModifier {
return chainMods(
RemoveAllHeaders(),
AddHeadersMap(headers),
)
}
func Auth(auth AuthProvider) RequestModifier {
return chainMods(
RemoveHeaders("Authorization"),
AddHeaders("Authorization", auth()),
)
return Headers("Authentication", auth())
}
func Basic(username, password string) AuthProvider {

View File

@ -1,10 +0,0 @@
package ezhttp
func chainMods(mods ...RequestModifier) RequestModifier {
return func(r *RequestBuilder) *RequestBuilder {
for _, mod := range mods {
r = mod(r)
}
return r
}
}