用socket写一个简单的聊天程序
Posted hsiyi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用socket写一个简单的聊天程序相关的知识,希望对你有一定的参考价值。
服务端代码:
# 创建socket对象:socket.socket()——>绑定IP地址和端口:bind——>监听:listen——>
# 得到请求:accept——>接收请求:recv——>发送信息:send——>关闭close
import socket server = socket.socket() # 创建一个socket对象 ip_port = (‘192.168.43.58‘, 8001) # 给出IP地址和端口号 server.bind(ip_port) # 绑定IP和端口 server.listen(5) # 监听 conn, address = server.accept() # 被动接收请求 while 1: content = input(‘服务端:‘) conn.send(content.encode(‘utf-8‘)) # 发送信息 from_client_msg = conn.recv(1024) # 接收来自客户端的信息 from_client_msg = from_client_msg.decode(‘utf-8‘) # 解码来自客户端的信息 print(‘来自客户端的信息:‘, from_client_msg) if from_client_msg == ‘bye‘: # 当客户端的信息为bye时结束聊天 break conn.close() # 关闭通道 server.close() # 关闭服务端
客户端代码:
# 创建socket对象:socket.socket()——>连接服务器:connect——>获取消息:recv——>发送消息:send——>关闭close
import socket client = socket.socket() # 创建socket对象 server_ip_port = (‘192.168.43.58‘, 8001) # 给出服务端的IP和端口 client.connect(server_ip_port) # 连接服务端 while 1: from_server_msg = client.recv(1024) # 接收来自服务端的信息 from_server_msg = from_sever_msg.decode(‘utf-8‘) # 解码来自服务端的信息 print(‘来自服务端的信息:‘, from_server_msg) content = input(‘客户端:‘) client.send(content.encode(‘utd-8‘)) # 发送信息到服务端 if from_server_msg == ‘bye‘: break client.close() # 关闭客户端
# 客户端里面的两处输入错误: from_sever_msg改为:from_server_msg, utd-8改为:utf-8.
以上是关于用socket写一个简单的聊天程序的主要内容,如果未能解决你的问题,请参考以下文章