在Haskell中进行网络编程通常使用网络库如Network.Socket
或者network
。以下是一个简单的使用Network.Socket
库的例子:
import Network.Socket
main :: IO ()
main = withSocketsDo $ do
-- 创建一个socket
sock <- socket AF_INET Stream 0
-- 将socket绑定到指定的主机和端口
bind sock (SockAddrInet 8080 iNADDR_ANY)
-- 监听连接
listen sock 5
putStrLn "Server listening on port 8080"
-- 接受连接
(conn, _) <- accept sock
putStrLn "Client connected"
-- 从连接中读取数据并打印
msg <- recv conn 1024
putStrLn $ "Received message: " ++ msg
-- 关闭连接和socket
close conn
close sock
上面的例子创建了一个简单的TCP服务器,监听端口8080,并接受来自客户端的连接和消息。在这个例子中,我们使用Network.Socket
库中的函数来创建socket,绑定地址和端口,监听连接,并接受数据。最后关闭连接和socket。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。