利用socket实现双机通信的核心代码
时间: 2023-10-24 20:04:33 浏览: 143
下面是一个简单的利用 socket 实现双机通信的 Python 代码示例:
服务器端:
```python
import socket
# 创建一个 socket 对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
# 设置端口号
port = 9999
# 绑定端口号
server_socket.bind((host, port))
# 等待客户端连接
server_socket.listen(5)
while True:
# 建立客户端连接
client_socket, addr = server_socket.accept()
print("连接地址:%s" % str(addr))
# 发送消息给客户端
message = '欢迎访问菜鸟教程!' + "\r\n"
client_socket.send(message.encode('utf-8'))
# 关闭连接
client_socket.close()
```
客户端:
```python
import socket
# 创建一个 socket 对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
# 设置端口号
port = 9999
# 连接服务,指定主机和端口号
client_socket.connect((host, port))
# 接收小于 1024 字节的数据
message = client_socket.recv(1024)
print(message.decode('utf-8'))
# 关闭连接
client_socket.close()
```
上述代码演示了一个简单的双机通信过程。服务器端创建一个 socket 对象,绑定到本地主机和端口号,并等待客户端连接。客户端创建一个 socket 对象,并连接到服务器端。服务器端和客户端通过各自的 socket 对象进行数据的发送和接收。在本例中,服务器端向客户端发送一条欢迎消息,客户端接收并打印该消息。通信结束后,服务器端和客户端均应该关闭它们的 socket。
阅读全文