Copyright | (C) 2016-2025 David M. Johnson |
---|---|
License | BSD3-style (see the file LICENSE) |
Maintainer | David M. Johnson <code@dmj.io> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Miso.Fetch
Description
Module for interacting with the Fetch API https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API manually.
Refer to the miso README if you want to automatically interact with a Servant API.
Synopsis
- fetch :: FromJSON result => MisoString -> MisoString -> Maybe MisoString -> [(MisoString, MisoString)] -> (result -> action) -> (MisoString -> action) -> Effect model action
Documentation
Arguments
:: FromJSON result | |
=> MisoString | url |
-> MisoString | method |
-> Maybe MisoString | body |
-> [(MisoString, MisoString)] | headers |
-> (result -> action) | successful callback |
-> (MisoString -> action) | errorful callback |
-> Effect model action |
See https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API
data Action = FetchGitHub | SetGitHub GitHub | ErrorHandler MisoString deriving (Show, Eq) updateModel :: Action -> Effect Model Action updateModel FetchGitHub = fetch "https://api.github.com" GET Nothing [] SetGitHub ErrorHandler updateModel (SetGitHub apiInfo) = info ?= apiInfo updateModel (ErrorHandler msg) = io_ (consoleError msg)