Şu anda Cloud-Haskell tutorial takip ediyorum ve createTransport
durumunda kalıyor. Bana göre sadece sunucu için 127.0.0.1'de bir nakliye açabiliyorum ve sunucuya bağlanmak için istemci için bir nakil açamıyorum. IP adresimi almak için curl ifconfig.me
kullanarak iki makine kullanmayı denedim, ancak createTransport
benim için bir taşıma oluşturmaz. Herhangi bir fikir?createTransport nasıl kullanılır?
DÜZENLEME: lokal olarak şimdi çalışıyor.
curl ifconfig.me
döner sunucu için 101.119.27.24
Komut satırı:
ServerClientServer 101.119.27.24 9000
Hata döndürdü:
Programım iki makine arasında bağlanmaya çalışırken, öğretici ile aynı olup
bind: unsupported operation (Cannot assign rerquested address)
DÜZENLEME: sunucu kodu takip gibidir:
main :: IO()
main = do
[host, port] <- getArgs
serverDone <- newEmptyMVar
Right transport <- createTransport host port
Right endpoint <- newEndPoint transport
forkIO $ echoServer endpoint serverDone
putStrLn $ "Echo server started at " ++ show (address endpoint)
readMVar serverDone `onCtrlC` closeTransport transport
echoServer
ve onCtrlC
işlevleri bir modülde tanımlanır. Ben hata mesajı ne olduğunu görebilmesi için
t <- createTransport host port defaultTCPParameters
let transport = case t of
(Right t) -> t
(Left e) -> error $ show e
içine Right transport <- createTransport host port
değiştirdi. açıklamalara dayanarak
beklendiği gibi çalışmaya başarısız bazı kod ile bize verebilir misiniz? "CreateTransport iNADDR_ANY" 3000 "defaultTCPParameters' hakkında ne dersiniz? –
Hangi arka uçla çalışıyorsunuz? Projeyi en son kullandığım zaman yerel ağ çalışması için bir arka uçtaydım. O zamandan beri hackage ve bir ya da iki tane daha popüler bir peer to peer versiyonu gördüm. – Davorak
Backend paketindeki gibi mi? network-transport-tcp-0.3.1 – HHC