macos - 异常 : connect: does not exist (Connection refused) when trying to connect to TCP socket in Haskell

标签 macos sockets haskell tcp

上下文

我正在关注 tutorial on writing a TCP server last week in Real World Haskell .一切顺利,我的最终版本可以正常工作,并且能够在 TCP 客户端和服务器之间发送消息。

然后,我想为我编写的一个小型 TicTacToe 游戏编写自己的 TCP 服务器。我开始编写服务器和客户端并进行了一些尝试,到目前为止它工作正常,服务器能够接受连接,但还没有真正的交互。

现在有点尴尬了,因为在我关闭我的 Mac 并尝试重新启动它之后,它再也无法启动了。我整个星期五都在忙于从单用户模式进行备份并重新安装 Mac 操作系统。重新安装成功后,我所有的数据都还在,所以我根本不需要备份。

无论如何,今天我要回到我的 TicTacToe 服务器,但它不再工作了。或者,至少客户端无法再连接到它。

长话短说

我受 tutorial in Real World Haskell 的启发,为 TicTacToe 游戏编写了一个 TCP 服务器。但在尝试连接到服务器时出现 *** Exception: connect: does not exist (Connection refused) 错误。上述教程中的普通代码也会发生同样的情况。

请注意,我仍然可以使用 telnet 连接到服务器。我很确定问题不在于代码,而在于系统级别,因为在我的机器出现问题之前,相同的代码正在运行(见上文),而且我仍在使用 RWH 教程中的相同代码。

最佳答案

好的,可以通过连接到 127.0.0.1 而不是 localhost 来解决问题。显然,当我的系统崩溃并重新安装时,一些绑定(bind)被更改,所以 ghc 不知道如何解析 localhost (或类似的东西......)

关于macos - 异常 : connect: does not exist (Connection refused) when trying to connect to TCP socket in Haskell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33874370/

相关文章:

c - 在c socket 中,为什么我的服务器不能接收全部内容?

c - 为什么通过网络发送的数据会转换为网络字节序?

haskell - Last 是一个自由幺半群吗?

haskell - 为什么 toInteger::Int -> Integer 是惰性的?

c++ - pthread_create::无法使用类型为 'void *(*)(void *)' 的右值初始化类型为 'void *' 的参数

arrays - 将一个文本字段中的多个值存储到一个数组中

c++ - 远程使用 C++ 模板函数

macos - 以原子方式写入多个文件

python - 在我的 Mac 上安装 pycrypto 时出错

haskell - 学习 Haskell 有哪些好的中级问题和项目?