Come si recuperano i dati da una richiesta POST utilizzando Network.Wai
e Warp
?Gestione di POST tramite Warp/WAI
Dire per esempio, ho una semplice pagina web
....
<form method="POST" action="/handlepost">
<input name="name" type="text" />
<input type="submit" />
</form>
....
Quando l'utente fa clic presentare, come posso recuperare questi dati? So come ottenere i dati GET (queryString
)
ad esempio
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?
Anche http://langnostic.blogspot.de/2013/04/simple-web-chat-using-haskells-waiwarp.html fornisce un ottimo esempio di come può essere utilizzato 'parseRequestBody'. La documentazione 'wai-extra' è un po 'macchinosa quando si tratta di impostare l'argomento di tipo' Sink x y' giusto. – eugenk