30
我想在Haskell中使用warp網絡服務器創建一個網站。由於我是一名Haskell初學者,像this one這樣的例子對我來說很複雜。最小warp網絡服務器示例
任何人都可以告訴我一個簡單的,如何使用最小的例子warp?
注意:這個問題故意顯示沒有研究工作,因爲它被回答Q & A-樣式。
我想在Haskell中使用warp網絡服務器創建一個網站。由於我是一名Haskell初學者,像this one這樣的例子對我來說很複雜。最小warp網絡服務器示例
任何人都可以告訴我一個簡單的,如何使用最小的例子warp?
注意:這個問題故意顯示沒有研究工作,因爲它被回答Q & A-樣式。
這是最小的Hello World使用warp 3.0+的應用程序。運行它,然後導航到http://localhost:3000
。此示例將顯示Hello world
。
爲了保持此示例最小化,URL路徑根本不處理(相同的內容是爲任何路徑傳遞的)。對於包含URL路徑處理稍長的例子,看到the Haskell Wiki
{-# LANGUAGE OverloadedStrings #-}
import Network.Wai (responseLBS, Application)
import Network.Wai.Handler.Warp (run)
import Network.HTTP.Types (status200)
import Network.HTTP.Types.Header (hContentType)
main = do
let port = 3000
putStrLn $ "Listening on port " ++ show port
run port app
app :: Application
app req f =
f $ responseLBS status200 [(hContentType, "text/plain")] "Hello world!"
更新2014-06-20:經3.0包括了一些API的變化 - 體現它們放回代碼。
請解釋downvote,只是downvoting這不會使任何更好的文章! –
這個例子似乎不適用於當前版本的Warp(3.0.0.3)? 無法匹配類型'Network.Wai.Internal.Response' 'IO Network.Wai.Internal.ResponseReceived' – Fil
@Fil感謝您的報告,我會看看它! –