创建自定义 happstack 响应代码
Create a custom happstack response code
我一直在尝试创建一个自定义 happstack
响应 405 "Method not allowed"
所以如果有人用 POST
或 PUT
方法调用 API
他们会得到这个回应。我是 happstack
的新手。我有什么想法可以做到吗?
嗯ok :: (FilterMonad Response m) => a -> m a
function is implemented as [src]:
ok :: (FilterMonad Response m) => a -> m a
ok = resp 200
所以这与您编写 ok
响应的方式相同,只是您应该将 resp :: (FilterMonad Response m) => Int -> b -> m b
与自定义 return 代码一起使用。
例如:
resp 405 "Method not allowed"
因此我们可以例如阻止 PUT
和 POST
请求,例如:
main :: IO ()
main = simpleHTTP nullConf $ msum
[ do method GET
ok $ "This is allowed.\n"
, do method PUT
(resp 405) $ "Method not allowed"
, do method POST
(resp 405) $ "Method not allowed"
]
我一直在尝试创建一个自定义 happstack
响应 405 "Method not allowed"
所以如果有人用 POST
或 PUT
方法调用 API
他们会得到这个回应。我是 happstack
的新手。我有什么想法可以做到吗?
嗯ok :: (FilterMonad Response m) => a -> m a
function is implemented as [src]:
ok :: (FilterMonad Response m) => a -> m a ok = resp 200
所以这与您编写 ok
响应的方式相同,只是您应该将 resp :: (FilterMonad Response m) => Int -> b -> m b
与自定义 return 代码一起使用。
例如:
resp 405 "Method not allowed"
因此我们可以例如阻止 PUT
和 POST
请求,例如:
main :: IO ()
main = simpleHTTP nullConf $ msum
[ do method GET
ok $ "This is allowed.\n"
, do method PUT
(resp 405) $ "Method not allowed"
, do method POST
(resp 405) $ "Method not allowed"
]