Skip to content

Commit 152ddcb

Browse files
committed
Add requestAnything
1 parent e401519 commit 152ddcb

File tree

1 file changed

+18
-2
lines changed

1 file changed

+18
-2
lines changed

src/Engage/Http.elm

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
module Engage.Http exposing
22
( Config, Error(..)
33
, get, post, patch, put, delete
4-
, requestJson, requestString
4+
, requestJson, requestString, requestAnything
55
, getErrorMessage, urlWithQueryString
66
, configDecoder, serverErrorDecoder, multipleServerErrorDecoder, nullDecoder
77
)
@@ -21,7 +21,7 @@ module Engage.Http exposing
2121
2222
# Raw requests
2323
24-
@docs requestJson, requestString
24+
@docs requestJson, requestString, requestAnything
2525
2626
2727
# Helper functions
@@ -243,6 +243,21 @@ requestJson method headers url requestBody toMsg decoder =
243243
requestString method headers url requestBody toMsg toResult
244244

245245

246+
{-| Raw request that does not expect a response.
247+
248+
This version can use any method and accepts any body (e.g. `Http.fileBody`, `Http.bytesBody`, or `Http.emptyBody`).
249+
250+
-}
251+
requestAnything : String -> List Http.Header -> String -> Http.Body -> (RemoteData Error () -> msg) -> Cmd msg
252+
requestAnything method headers url requestBody toMsg =
253+
let
254+
toResult : Http.Metadata -> String -> Result Error ()
255+
toResult _ _ =
256+
Ok ()
257+
in
258+
requestString method headers url requestBody toMsg toResult
259+
260+
246261
{-| Raw request that expects a `String` response (but not necessarily a valid JSON `String`).
247262
248263
This version can use any method and accepts any body (e.g. `Http.fileBody`, `Http.bytesBody`, or `Http.emptyBody`).
@@ -382,6 +397,7 @@ getErrorMessage args error =
382397

383398
BadStatus statusCode body ->
384399
let
400+
--TODO: Differentiate message based on status code
385401
defaultMessage : String
386402
defaultMessage =
387403
Localization.localizeStringWithDefault "There was an error processing your request" "Server.Error" args

0 commit comments

Comments
 (0)