day18作业

作业:

1. 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。

然后就可以和下一个人一直聊

#服务器
import socket

# 创建一个ipv4和tcp套接字对象
server = socket.socket()
# 绑定ip地址和端口
server.bind(('10.7.187.106', 8025))
# 开始监听(监听数最大是400)
server.listen((400))
print('开始监听!!!')
# 让服务器一直处在运行的状态
while True:
    conversation, addr = server.accept()
    print('接收到请求:', addr)
    # 接收消息
    while True:
        data = conversation.recv(1024)
        print('客户端:', data.decode('utf-8'))
        # 发送消息
        message = input('服务器:')
        conversation.send(message.encode('utf-8'))
        if message == '拜拜':
            conversation.close()

#客户端
import socket
# 创建一个ipv4和tcp套接字对象
client = socket.socket()
#绑定地址和端口
client.connect(('10.7.187.106', 8025))
while True:
    #发送消息
    message = input('客户端:')
    client.send(message.encode('utf-8'))
    #接收消息
    data = client.recv(1024)
    print('服务器:', data.decode('utf-8'))
    if message == '拜拜':
        client.close()

2.客户端给服务器发送请求,请求成功后,客户端给服务发送‘1’,

服务器就给客户端发送一张图片;客户端给服务发送‘2’,

服务器就给客户端返回一个json文件中的内容;客户端给服务发送‘3’,

服务器返回’拜拜’,然后断开连接

没做出来

服务器:
import socket

# 创建一个ipv4和tcp套接字对象
server = socket.socket()
# 绑定ip地址和端口
server.bind(('10.7.187.106', 8023))
# 开始监听(监听数最大是400)
server.listen((400))
print('开始监听!!!')
# 让服务器一直处在运行的状态
while True:
    conversation, addr = server.accept()
    print('接收到请求:', addr)
    # 接收消息
    while True:
        data = conversation.recv(1024)
        print('客户端:', data.decode('utf-8'))
        # 发送消息
        if data == '1':
            with open('www.jpg', 'br')as f:
                message = f.read()
                conversation.send(message)
        elif data == '2':
            with open('json', 'br') as f:
                message = f.read()
                conversation.send(message)
        elif data == '3':
            message = '拜拜'
            conversation.send(message.encode('utf-8'))
            conversation.close()
客户端:
# 创建一个ipv4和tcp套接字对象
client = socket.socket()
# 绑定地址和端口
client.connect(('10.7.187.106', 8023))
data = bytes()
while True:
    message = input('客户端:')
    client.send(message.encode('utf-8'))

    re_data = client.recv(1024)
    data += re_data
    print('接收到数据!')
    if not re_data:
        break

print('数据接收完了')
with open('we.png', 'bw') as f:
    f.write(data)
    print('服务器:',re_data.decode('utf-8'))

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊 2.客户端给服务器发送请求,请...
    杨海py阅读 359评论 0 0
  • 作业: 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊 2.客户端给服务器发送...
    2ez4ddf阅读 198评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,991评论 19 139
  • 听到时间诉说着归期眼前早已不清晰说过的誓言可曾忘记流光把人抛了,谁寄? 青霜积满了阶梯漫漫擦去露出苔上的印记卷起那...
    睡着的土豆芽阅读 194评论 0 2
  • 小裁缝,休息了 尖尖的针,会唱歌的嘴巴,蓝色的布匹上刺绣 机警敏锐,往事的缠绵。生芽的故事 藏在发光的羽翼,不知双...
    忠志_3d7b阅读 251评论 1 4