Ruby 面试题
目录

Ruby 中如何使用 socket 进行网络编程?

· 约 2 分钟读完 · 第 143 / 199 章

推荐答案

在 Ruby 中,使用 socket 进行网络编程可以通过 socket 标准库来实现。以下是一个简单的例子,展示了如何使用 socket 创建一个 TCP 服务器和客户端。

TCP 服务器示例

TCP 客户端示例

本题详细解读

1. 服务器端代码解析

  • TCPServer.new(12345):创建一个 TCP 服务器,监听端口 12345。
  • server.accept:等待客户端连接,并返回一个 TCPSocket 对象,表示与客户端的连接。
  • client.puts "Hello, client!":向客户端发送一条消息。
  • client.close:关闭与客户端的连接。

2. 客户端代码解析

  • TCPSocket.new('localhost', 12345):创建一个 TCP 客户端,连接到 localhost 的 12345 端口。
  • client.gets:从服务器接收消息。
  • puts message:输出接收到的消息。
  • client.close:关闭与服务器的连接。

3. 其他注意事项

  • 端口选择:在实际应用中,应选择一个未被占用的端口号。
  • 错误处理:在实际应用中,应添加错误处理机制,以应对网络异常等情况。
  • 并发处理:如果需要处理多个客户端连接,可以使用多线程或 IO.select 等技术。

通过以上代码和解析,你可以在 Ruby 中使用 socket 进行基本的网络编程。