Network.accept
возвращает мне ручку на прием соединения, которое я передаю в качестве аргумента respondHTTP
(от Network.HTTP.Base) Их типов,поток Vs Handle, respondHTTP бросает ошибке
accept :: Socket -> IO (Handle, HostName, PortNumber)
respondHTTP :: HStream ty => HandleStream ty -> Response ty -> IO()
Этого линия - git-code
handleResponse = Kleisli (print ||| respondHTTP c)
, бросает ошибку, как,
simpleserver.hs:43:53:
Couldn't match expected type ‘Network.TCP.HandleStream ty’
with actual type ‘Handle’
Relevant bindings include
handleResponse :: Kleisli IO (Either b (Response ty))()
(bound at simpleserver.hs:43:5)
In the first argument of ‘respondHTTP’, namely ‘c’
In the second argument of ‘(|||)’, namely ‘respondHTTP c’
Как я могу преобразовать Handle
(возвращенный с Network.accept)
в Stream
перед передачей его respondHTTP
?