Module

Simple.Ajax

Package
purescript-simple-ajax
Repository
dariooddenino/purescript-simple-ajax

#simpleRequest Source

simpleRequest :: forall a b r rx t. EncodeJson a => DecodeJson b => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Either Method CustomMethod -> Record r -> URL -> Maybe a -> Aff (Either AjaxError b)

Makes an HTTP request and tries to parse the response json.

Helper methods are provided for the most common requests.

#simpleRequest_ Source

simpleRequest_ :: forall a r rx t. EncodeJson a => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Either Method CustomMethod -> Record r -> URL -> Maybe a -> Aff (Either HTTPError Unit)

Makes an HTTP request ignoring the response payload.

Helper methods are provided for the most common requests.

#SimpleRequest Source

type SimpleRequest = Record SimpleRequestRow

A Request object with only the allowed fields.

#SimpleRequestRow Source

type SimpleRequestRow = (headers :: Array RequestHeader, password :: Maybe String, username :: Maybe String, withCredentials :: Boolean)

#postR Source

postR :: forall a b r rx t. EncodeJson a => DecodeJson b => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either AjaxError b)

Makes a POST request, taking a subset of a SimpleRequest, an URL and an optional payload and then tries to parse the response json.

#post Source

post :: forall a b. EncodeJson a => DecodeJson b => URL -> Maybe a -> Aff (Either AjaxError b)

Makes a POST request, taking an URL and an optional payload trying to parse the response json.

#postR_ Source

postR_ :: forall a r rx t. EncodeJson a => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either HTTPError Unit)

Makes a POST request, taking a subset of a SimpleRequest, an URL and an optional payload, ignoring the response payload.

#post_ Source

post_ :: forall a. EncodeJson a => URL -> Maybe a -> Aff (Either HTTPError Unit)

Makes a POST request, taking an URL and an optional payload, ignoring the response payload.

#postH Source

postH :: forall a b. EncodeJson a => DecodeJson b => URL -> Maybe a -> Aff (Either AjaxError (Tuple (Array ResponseHeader) b))

Makes a POST request, taking an URL and an optional payload trying to parse the response json.

#postH_ Source

postH_ :: forall a. EncodeJson a => URL -> Maybe a -> Aff (Either HTTPError (Tuple (Array ResponseHeader) Unit))

Makes a POST request, taking an URL and an optional payload, ignoring the response payload.

#postRH Source

postRH :: forall a b r rx t. EncodeJson a => DecodeJson b => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either AjaxError (Tuple (Array ResponseHeader) b))

Makes a POST request, taking a subset of a SimpleRequest, an URL and an optional payload and then tries to parse the response json, and provides the response headers.

#postRH_ Source

postRH_ :: forall a r rx t. EncodeJson a => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either HTTPError (Tuple (Array ResponseHeader) Unit))

Makes a POST request, taking a subset of a SimpleRequest, an URL and an optional payload, ignoring the response payload.

#putR Source

putR :: forall a b r rx t. EncodeJson a => DecodeJson b => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either AjaxError b)

Makes a PUT request, taking a subset of a SimpleRequest, an URL and an optional payload and then tries to parse the response json.

#put Source

put :: forall a b. EncodeJson a => DecodeJson b => URL -> Maybe a -> Aff (Either AjaxError b)

Makes a PUT request, taking an URL and an optional payload trying to parse the response json.

#putR_ Source

putR_ :: forall a r rx t. EncodeJson a => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either HTTPError Unit)

Makes a PUT request, taking a subset of a SimpleRequest, an URL and an optional payload, ignoring the response payload.

#put_ Source

put_ :: forall a. EncodeJson a => URL -> Maybe a -> Aff (Either HTTPError Unit)

Makes a PUT request, taking an URL and an optional payload, ignoring the response payload.

#deleteR Source

deleteR :: forall b r rx t. DecodeJson b => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Aff (Either AjaxError b)

Makes a DELETE request, taking a subset of a SimpleRequest and an URL and then tries to parse the response json.

#delete Source

delete :: forall b. DecodeJson b => URL -> Aff (Either AjaxError b)

Makes a DELETE request, taking an URL and then tries to parse the response json.

#deleteR_ Source

deleteR_ :: forall r rx t. Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Aff (Either HTTPError Unit)

Makes a DELETE request, taking a subset of a SimpleRequest and an URL, ignoring the response payload.

#delete_ Source

delete_ :: URL -> Aff (Either HTTPError Unit)

Makes a DELETE request, taking an URL, ignoring the response payload.

#patchR Source

patchR :: forall a b r rx t. EncodeJson a => DecodeJson b => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either AjaxError b)

Makes a PATCH request, taking a subset of a SimpleRequest, an URL and an optional payload and then tries to parse the response json.

#patch Source

patch :: forall a b. EncodeJson a => DecodeJson b => URL -> Maybe a -> Aff (Either AjaxError b)

Makes a PATCH request, taking an URL and an optional payload trying to parse the response json.

#patchR_ Source

patchR_ :: forall a r rx t. EncodeJson a => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Maybe a -> Aff (Either HTTPError Unit)

Makes a PATCH request, taking a subset of a SimpleRequest, an URL and an optional payload, ignoring the response payload.

#patch_ Source

patch_ :: forall a. EncodeJson a => URL -> Maybe a -> Aff (Either HTTPError Unit)

Makes a PATCH request, taking an URL and an optional payload, ignoring the response payload.

#getR Source

getR :: forall b r rx t. DecodeJson b => Union r SimpleRequestRow rx => Union r (RequestRow Json) t => Nub rx SimpleRequestRow => Nub t (RequestRow Json) => Record r -> URL -> Aff (Either AjaxError b)

Makes a GET request, taking a subset of a SimpleRequest and an URL as arguments and then tries to parse the response json.

#get Source

get :: forall b. DecodeJson b => URL -> Aff (Either AjaxError b)

Makes a GET request, taking an URL as argument and then tries to parse the response json.

#handleResponse Source

Re-exports from Simple.Ajax.Errors

#HTTPError Source

type HTTPError = BasicError ()

Basic error type containing the common http errors.

#AjaxError Source

type AjaxError = BasicError ParseError

Extends HTTPError to add json parsing errors.

#_unAuthorized Source

_unAuthorized :: Proxy @Symbol "unAuthorized"

#_serverError Source

_serverError :: Proxy @Symbol "serverError"

#_parseError Source

_parseError :: Proxy @Symbol "parseError"

#_notFound Source

_notFound :: Proxy @Symbol "notFound"

#_methodNotAllowed Source

_methodNotAllowed :: Proxy @Symbol "methodNotAllowed"

#_forbidden Source

_forbidden :: Proxy @Symbol "forbidden"

#_badRequest Source

_badRequest :: Proxy @Symbol "badRequest"

#_affjaxError Source

_affjaxError :: Proxy @Symbol "affjaxError"