X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=examples%2FMultipart.hs;fp=examples%2FMultipart.hs;h=b7faa38dc97405aebb0d909a11d2cd2fa344f913;hb=e53a2f3202f763e844de725712f1bf26b82cd41f;hp=0000000000000000000000000000000000000000;hpb=83db536d11e8efb26848318ad4514b825f412460;p=Lucu.git diff --git a/examples/Multipart.hs b/examples/Multipart.hs new file mode 100644 index 0000000..b7faa38 --- /dev/null +++ b/examples/Multipart.hs @@ -0,0 +1,35 @@ +import Data.List +import Data.Maybe +import Network +import Network.HTTP.Lucu + +main :: IO () +main = let config = defaultConfig { cnfServerPort = PortNumber 9999 } + resources = mkResTree [ ([], resMain) ] + in + do putStrLn "Access http://localhost:9999/ with your browser." + runHttpd config resources + + +resMain :: ResourceDef +resMain + = ResourceDef { + resUsesNativeThread = False + , resIsGreedy = False + , resGet + = Just $ do setContentType $ read "text/html" + output ("Multipart Form Test" ++ + "
" ++ + " Enter some value:" ++ + " " ++ + " " ++ + "
") + , resHead = Nothing + , resPost + = Just $ do form <- inputForm defaultLimit + let value = fromMaybe "" $ fmap snd $ find ((== "val") . fst) form + setContentType $ read "text/plain" + output ("You entered: " ++ value) + , resPut = Nothing + , resDelete = Nothing + } \ No newline at end of file