The wai-extra package

[ Tags: library, mit, web ] [ Propose Tags ]

Provides basic WAI handler and middleware functionality:

Hspec testing facilities and helpers for WAI.

Send server events to the client. Compatible with the JavaScript EventSource API.

Override the Accept header in a request. Special handling for the _accept query parameter (which is used throughout WAI override the Accept header).

WAI Middleware for adding arbitrary headers to an HTTP request.

Clean a request path to a canonical form.

Negotiate HTTP payload gzip compression.

WAI Basic Authentication Middleware which uses Authorization header.

"JSON with Padding" middleware. Automatic wrapping of JSON responses to convert into JSONP.

Allows overriding of the HTTP request method via the _method query string parameter.

Request logging middleware for development and production environments

Rewrite request path info based on a custom conversion rules.

Convert ResponseFile type responses into ResponseStream type.

Redirect incoming requests to a new host based on custom rules.

API docs and the README are available at http://www.stackage.org/package/wai-extra.


[Skip to Readme]

Properties

Versions 0.0.0, 0.0.0.1, 0.0.0.2, 0.1.0, 0.1.1, 0.1.2, 0.1.2.1, 0.1.3, 0.1.3.1, 0.2.0, 0.2.1, 0.2.2, 0.2.2.1, 0.2.2.2, 0.2.3, 0.2.4, 0.2.4.1, 0.2.4.2, 0.3.0, 0.3.1, 0.3.2, 0.3.2.1, 0.3.3, 0.4.0, 0.4.0.1, 0.4.0.2, 0.4.0.3, 0.4.1.1, 0.4.1.2, 0.4.2, 0.4.3, 0.4.4, 0.4.5, 0.4.5.1, 0.4.5.2, 0.4.6, 1.0.0, 1.0.0.1, 1.1.0, 1.1.0.1, 1.2.0, 1.2.0.1, 1.2.0.2, 1.2.0.3, 1.2.0.4, 1.2.0.5, 1.2.0.6, 1.3.0, 1.3.0.1, 1.3.0.2, 1.3.0.3, 1.3.0.4, 1.3.0.5, 1.3.1, 1.3.1.1, 1.3.2, 1.3.2.1, 1.3.2.2, 1.3.2.3, 1.3.2.4, 1.3.3, 1.3.3.1, 1.3.3.2, 1.3.4, 1.3.4.1, 1.3.4.2, 1.3.4.3, 1.3.4.4, 1.3.4.5, 1.3.4.6, 2.0.0, 2.0.0.1, 2.0.1, 2.0.1.1, 2.0.1.2, 2.0.2, 2.0.3, 2.0.3.1, 2.0.3.2, 2.0.3.3, 2.1.0, 2.1.0.1, 2.1.1, 2.1.1.1, 2.1.1.2, 2.1.1.3, 3.0.0, 3.0.0.1, 3.0.1, 3.0.1.1, 3.0.1.2, 3.0.2, 3.0.2.1, 3.0.2.2, 3.0.3, 3.0.3.1, 3.0.3.2, 3.0.4, 3.0.4.1, 3.0.4.2, 3.0.4.3, 3.0.4.4, 3.0.4.5, 3.0.4.6, 3.0.5, 3.0.6, 3.0.6.1, 3.0.7, 3.0.7.1, 3.0.8.0, 3.0.8.1, 3.0.8.2, 3.0.9, 3.0.10, 3.0.10.1, 3.0.11, 3.0.11.1, 3.0.12, 3.0.13, 3.0.13.1, 3.0.14, 3.0.14.1, 3.0.14.3, 3.0.15, 3.0.15.1, 3.0.15.2, 3.0.15.3, 3.0.16.0, 3.0.16.1, 3.0.17, 3.0.18, 3.0.19, 3.0.19.1, 3.0.20.0, 3.0.20.1, 3.0.20.2 (info)
Change log ChangeLog.md
Dependencies aeson, ansi-terminal, base (>=4.6 && <5), base64-bytestring, blaze-builder (>=0.2.1.4 && <0.5), bytestring (>=0.9.1.4), case-insensitive (>=0.2), containers, cookie, data-default-class, deepseq, directory (>=1.0.1), fast-logger (>=2.4.5 && <2.5), http-types (>=0.7), iproute, lifted-base (>=0.1.2), network (>=2.6.1.0), old-locale (>=1.0.0.2 && <1.1), resourcet (>=0.4.6 && <1.2), streaming-commons, stringsearch (==0.3.*), text (>=0.7), time (>=1.1.4), transformers (>=0.2.2), unix, unix-compat, vault, void (>=0.5), wai (>=3.0.3.0 && <3.3), wai-logger (>=2.2.6 && <2.4), word8, zlib [details]
License MIT
Author Michael Snoyman
Maintainer michael@snoyman.com
Category Web
Home page http://github.com/yesodweb/wai
Source repository head: git clone git://github.com/yesodweb/wai.git
Uploaded Wed Nov 22 09:16:56 UTC 2017 by MichaelSnoyman
Distributions Arch:3.0.20.2, Debian:3.0.13.1, Fedora:3.0.19.1, FreeBSD:3.0.10, LTSHaskell:3.0.20.2, NixOS:3.0.20.2, Stackage:3.0.20.2, Tumbleweed:3.0.20.0
Executables example
Downloads 99728 total (5955 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-11-22 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Flags

NameDescriptionDefaultType
build-example

Build example executable.

DisabledManual

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for wai-extra-3.0.20.2

[back to package description]

wai-extra

The goal here is to provide common features without many dependencies.

Example using Server-Sent Events

There is a small example using Server-Sent Events (SSE) in the ./example directory.

Run the commands below to start the server on http://localhost:8080

$ stack build .
$ stack exec example