gpt4 book ai didi

haskell - 使用 Warp/WAI 处理 POST

转载 作者:行者123 更新时间:2023-12-02 14:34:23 24 4
gpt4 key购买 nike

如何使用 Network.WaiWarp 从 POST 请求检索数据?

例如,我有一个简单的网页

....
<form method="POST" action="/handlepost">
<input name="name" type="text" />
<input type="submit" />
</form>
....

当用户点击提交时,我如何检索这些数据?我知道如何获取 GET 数据 (queryString)

例如

app :: Application
app request = case rawPathInfo request of
"/" -> return $ displayForm
"/handlePost" -> return $ handlepost
_ -> return $ notFound

displayForm :: Response
displayForm = ResponseBuilder
status200
[("Content-Type", "text/html")] $
fromByteString "<form method='POST' action='/handlepost'><input name="name" type="text" /><input type='submit'></form>"

handlePost :: Request -> Response
handlePost req = undefined -- how do I examine the contents of POST?

最佳答案

只是补充一下 hammar 的答案:wai 包本身只是定义了接口(interface),它不提供任何辅助函数。您正在寻找的是 wai-extra 包,特别是 parseRequestBody 。请注意,这使您可以准确控制上传文件的存储方式,例如临时文件或内存中。

关于haskell - 使用 Warp/WAI 处理 POST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7422913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com