Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data ServantErr = ServantErr {
- errHTTPCode :: Int
- errReasonPhrase :: String
- errBody :: ByteString
- errHeaders :: [Header]
- responseServantErr :: ServantErr -> Response
- err300 :: ServantErr
- err301 :: ServantErr
- err302 :: ServantErr
- err303 :: ServantErr
- err304 :: ServantErr
- err305 :: ServantErr
- err307 :: ServantErr
- err400 :: ServantErr
- err401 :: ServantErr
- err402 :: ServantErr
- err403 :: ServantErr
- err404 :: ServantErr
- err405 :: ServantErr
- err406 :: ServantErr
- err407 :: ServantErr
- err409 :: ServantErr
- err410 :: ServantErr
- err411 :: ServantErr
- err412 :: ServantErr
- err413 :: ServantErr
- err414 :: ServantErr
- err415 :: ServantErr
- err416 :: ServantErr
- err417 :: ServantErr
- err500 :: ServantErr
- err501 :: ServantErr
- err502 :: ServantErr
- err503 :: ServantErr
- err504 :: ServantErr
- err505 :: ServantErr
Documentation
data ServantErr Source
ServantErr | |
|
err300
Multiple Choices
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err300 { errBody = "I can't choose." }
err301
Moved Permanently
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr err301
err304
Not Modified
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr err304
err307
Temporary Redirect
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr err307
err400
Bad Request
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err400 { errBody = "Your request makes no sense to me." }
err401
Unauthorized
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err401 { errBody = "Your credentials are invalid." }
err402
Payment Required
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err402 { errBody = "You have 0 credits. Please give me $$$." }
err403
Forbidden
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err403 { errBody = "Please login first." }
err404
Not Found
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err404 { errBody = "(╯°□°)╯︵ ┻━┻)." }
err405
Method Not Allowed
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err405 { errBody = "Your account privileges does not allow for this. Please pay $$$." }
err406
Not Acceptable
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr err406
err407
Proxy Authentication Required
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr err407
err409
Conflict
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err409 { errBody = "Transaction conflicts with 59879cb56c7c159231eeacdd503d755f7e835f74" }
err410
Gone
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err410 { errBody = "I know it was here at some point, but.. I blame bad luck." }
err411
Length Required
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr err411
err412
Precondition Failed
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err412 { errBody = "Precondition fail: x < 42 && y > 57" }
err413
Request Entity Too Large
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err413 { errBody = "Request exceeded 64k." }
err414
Request-URI Too Large
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err414 { errBody = "Maximum length is 64." }
err415
Unsupported Media Type
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err415 { errBody = "Supported media types: gif, png" }
err416
Request range not satisfiable
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err416 { errBody = "Valid range is [0, 424242]." }
err417
Expectation Failed
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err417 { errBody = "I found a quux in the request. This isn't going to work." }
err500
Internal Server Error
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err500 { errBody = "Exception in module A.B.C:55. Have a great day!" }
err501
Not Implemented
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err501 { errBody = "/v1/foo is not supported with quux in the request." }
err502
Bad Gateway
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err502 { errBody = "Tried gateway foo, bar, and baz. None responded." }
err503
Service Unavailable
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err503 { errBody = "We're rewriting in PHP." }
err504
Gateway Time-out
Example:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err504 { errBody = "Backend foobar did not respond in 5 seconds." }
err505
HTTP Version not supported
Example usage:
failingHandler :: ExceptT ServantErr IO () failingHandler = throwErr $ err505 { errBody = "I support HTTP/4.0 only." }