Module

Node.Express.App

Package
purescript-express
Repository
nkly/purescript-express

#AppM Source

data AppM a

Monad responsible for application related operations (initial setup mostly).

Instances

#App Source

type App = AppM Unit

#listenHttp Source

listenHttp :: App -> Port -> (Event -> Effect Unit) -> Effect Server

Run application on specified port and execute callback after launch. HTTP version

#listenHttps Source

listenHttps :: forall opts. App -> Port -> opts -> (Event -> Effect Unit) -> Effect Server

Run application on specified port and execute callback after launch. HTTPS version

#listenHostHttp Source

listenHostHttp :: App -> Port -> Host -> (Event -> Effect Unit) -> Effect Server

Run application on specified port & host and execute callback after launch. HTTP version

#listenHostHttps Source

listenHostHttps :: forall opts. App -> Port -> Host -> opts -> (Event -> Effect Unit) -> Effect Server

Run application on specified port & host and execute callback after launch. HTTPS version

#listenPipe Source

listenPipe :: App -> Pipe -> (Event -> Effect Unit) -> Effect Server

Run application on specified named pipe and execute callback after launch. HTTP version

#makeHttpServer Source

makeHttpServer :: App -> Effect Server

Create a Node.HTTP server from the Express application. HTTP version

#makeHttpsServer Source

makeHttpsServer :: App -> Effect Server

Create a Node.HTTP server from the Express application. HTTPS version

#apply Source

apply :: App -> Application -> Effect Unit

Apply App actions to existent Express.js application

#use Source

use :: Handler -> App

Use specified middleware handler.

#useExternal Source

useExternal :: Fn3 Request Response (Effect Unit) (Effect Unit) -> App

Use any function as middleware. Introduced to ease usage of a bunch of external middleware written for express.js. See http://expressjs.com/4x/api.html#middleware

#useAt Source

useAt :: Path -> Handler -> App

Use specified middleware only on requests matching path.

#useAtExternal Source

useAtExternal :: Path -> Fn3 Request Response (Effect Unit) (Effect Unit) -> App

Use any function as middleware only on requests matching path. Introduced to ease usage of a bunch of external middleware written for express.js. See http://expressjs.com/4x/api.html#middleware

#useOnParam Source

useOnParam :: String -> (String -> Handler) -> App

Process route param with specified handler.

#useOnError Source

useOnError :: (Error -> Handler) -> App

Use error handler. Probably this should be the last middleware to attach.

#getProp Source

getProp :: forall a. String -> AppM (Maybe a)

Get application property. See http://expressjs.com/4x/api.html#app-settings

#setProp Source

setProp :: forall a. String -> a -> App

Set application property. See http://expressjs.com/4x/api.html#app-settings

#http Source

http :: forall r. RoutePattern r => Method -> r -> Handler -> App

Bind specified handler to handle request matching route and method.

#get Source

get :: forall r. RoutePattern r => r -> Handler -> App

Shortcut for http GET.

#post Source

post :: forall r. RoutePattern r => r -> Handler -> App

Shortcut for http POST.

#put Source

put :: forall r. RoutePattern r => r -> Handler -> App

Shortcut for http PUT.

#delete Source

delete :: forall r. RoutePattern r => r -> Handler -> App

Shortcut for http DELETE.

#all Source

all :: forall r. RoutePattern r => r -> Handler -> App

Shortcut for http ALL (match on any http method).