In Elm (0.18) Я вызываю одну конечную точку http DELETE, которая в случае успеха отвечает 200 и пустым телом.Http DELETE с пустым телом
В этом случае (для успеха) мне нужно передать сообщение с начальным идентификатором (OnDelete playerId
). Но поскольку тело пустое, я не могу его разобрать.
В настоящее время я делаю это так, но есть более элегантный способ, чтобы написать expect
часть Http.Request
:
Http.expectStringResponse (\response -> Ok playerId)
?
Это отражает мой текущий код:
deletePlayer : PlayerId -> Cmd Msg
deletePlayer playerId =
deleteRequest playerId
|> Http.send OnDelete
deleteRequest : PlayerId -> Http.Request PlayerId
deleteRequest playerId =
Http.request
{ body = Http.emptyBody
, expect = Http.expectStringResponse (\response -> Ok playerId)
, headers = []
, method = "DELETE"
, timeout = Nothing
, url = "http://someHost/players/" ++ playerId
, withCredentials = False
}
type alias PlayerId =
String
я, как ваш alwaysExpect метод обертку, хотя это огорчает меня, что нет такой вещи из коробки. Я буду отмечать его как правильный ответ, если через несколько дней, если никто не даст лучшего ответа. –