sockets - Ruby 中的 TCPServer.new(port) 和 TCPServer.open ("X.X.X.X", port) 有什么区别?

标签 sockets server-side ruby-1.9.3 tcpserver

我已经阅读了 Ruby 文档,但我并没有真正理解这两个对象之间的区别。

TCPServer.new(端口) 和 TCPServer.open("X.X.X.X", 端口)

我所知道的是 .new 仅响应尝试连接到 IP 的“localhost”的客户端(并且仅响应同一台计算机上的客户端)。当客户端尝试连接到 127.0.0.0(据称与“localhost”相同)时,它甚至不起作用。但是 .open 让我允许来 self 的计算机外部的人进行连接。我从未向 .new 提供过 IP,而只向 .open 提供过 IP,如您在上面看到的。我只是想了解一下这两者的总体工作原理,因此任何信息都会有所帮助!谢谢!

最佳答案

它们是相同的。在《Ruby 编程 1.9》中,它说:

open: Synonym for TCPServer.new

关于sockets - Ruby 中的 TCPServer.new(port) 和 TCPServer.open ("X.X.X.X", port) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16110327/

相关文章:

c++ - UDP 服务器套接字缓冲区溢出

java - 一个ServerSocket与多个Socket之间的通信

Ruby CGI::Cookie 原始 cookie 解析

ruby - 在 Ruby 1.9.3 中安装 debugger-linecache 时出错

python - 实例化 icmp ipv6 后在 v6 python 套接字中设置 'next header' 字节

C编程-tcp套接字远程端口检索

javascript - 是 PHP include() 还是 JS src 更快地包含文件?

ruby-on-rails - 如果我将 ruby​​ 版本 2.5.1 与 rails 版本 2.3.18 一起使用会怎样?

mysql - XML 与数据库

debugging - Meteor:服务器端调试