ワープ/ WAIアプリケーションで動作していないし、それが実行されるように私は私がコンソールにログインすると予想「echoサーバ」を書いた:ターミナルIOは、私はWebSocketをいじりだ
echo = Warp.run 3000 app
where
app = WS.websocketsOr
WS.defaultConnectionOptions
wsApp
httpApp
httpApp _ respond = do
put "HTTP Request Recieved"
respond $ Wai.responseFile
Http.status200
[]
"web/index.html"
Nothing
wsApp :: WS.ServerApp
wsApp pendingConn = do
conn <- WS.acceptRequest pendingConn
WS.forkPingThread conn 30
put "WebSocket Connection Open"
listen conn
listen :: WS.Connection -> IO()
listen conn = forever $ do
str <- WS.receiveData conn :: (IO Text.Text)
put $ Text.unpack str
WS.sendTextData conn str
main :: IO()
main = do
put "Echo WebSocket Running ..."
echo
put str = hPutStrLn stdout str >> hFlush stdout
することができますように参照してください、私はフラッシングstdout
を試みたが成功なし。私は得る
$ ./echoServer
Echo WebSocket Running ...
しかしそれ以上何もない。 "web/index.html"をブラウザに正常にロードして、WebSocketへの接続を確立して使用することはできますが、コンソールからのフィードバックは得られません。
コンソールに出力するには何が必要ですか?
ライブラリバージョン:
- Warp:3.2.13
- WAI:3.2.1.1
- wai-websockets:3.0.1.1
- WebSocketを:0.12.2.0