day18-作業(yè)

  1. 客戶端和服務(wù)器聊天,可以一直聊天,直到一方發(fā)送’拜拜’。然后就可以和下一個人一直聊
# 服務(wù)器
import socket
server = socket.socket()
server.bind(('10.7.187.68', 8000))
server.listen(100)
print('開始監(jiān)聽')
while True:
    conversation, addr = server.accept()
    while True:
        print('接收到請求:', addr)
        re_data = conversation.recv(1024)
        str1 = re_data.decode('utf-8')
        print('客戶端:', str1)
        if str1 != '拜拜':
            message = input('請輸入發(fā)送消息:')
            conversation.send(bytes(message.encode(encoding='utf-8')))
            if message == '拜拜':
                break
        else:
            break
    conversation.close()


# 客戶端
import socket
client = socket.socket()
client.connect(('10.7.187.68', 8000))
while True:
    message = input('請輸入需要發(fā)送的消息:')
    client.send(message.encode(encoding='utf-8'))
    if message != '拜拜':
        re_data = client.recv(1024)
        print('服務(wù)器:', re_data.decode('utf-8'))
        if re_data.decode('utf-8') == '拜拜':
            break
    else:
        break
client.close()

2.客戶端給服務(wù)器發(fā)送請求,請求成功后,客戶端給服務(wù)發(fā)送‘1’,服務(wù)器就給客戶端發(fā)送一張圖片;客戶端給服務(wù)發(fā)送‘2’,服務(wù)器就給客戶端返回一個json文件中的內(nèi)容;客戶端給服務(wù)發(fā)送‘3’, 服務(wù)器返回’拜拜’,然后斷開連接

# 服務(wù)器
import socket
server = socket.socket()
server.bind(('10.7.187.68', 8000))
server.listen(100)
print('開始監(jiān)聽')
while True:
    conversation, addr = server.accept()
    while True:
        print('接收到請求:', addr)
        re_data = conversation.recv(1024)
        str1 = re_data.decode('utf-8')
        print('客戶端:', str1)
        if str1 != '拜拜':
            if str1 == '1':
                with open('王也.jpg', 'rb') as f:
                    content = f.read()
                conversation.send(content)
            elif str1 == '2':
                import json
                with open('json1.json', encoding='utf-8') as f1:
                    content1 = json.load(f1)
                conversation.send(bytes(content1.encode(encoding='utf-8')))
            elif str1 == '3':
                message = '拜拜'
                conversation.send(bytes(message.encode(encoding='utf-8')))
                break
            else:
                message = input('請輸入:')
                conversation.send(message.encode(encoding='utf-8'))
                if message == '拜拜':
                    break
        else:
            break
    conversation.close()

# 客戶端
import socket
client = socket.socket()
client.connect(('10.7.187.68', 8000))
while True:
    message = input('請輸入需要發(fā)送的消息:')
    client.send(message.encode(encoding='utf-8'))
    if message != '拜拜':
        re_data = client.recv(102400000)
        if message == '1':
            with open('接收圖片.jpg', 'wb') as f:
                f.write(re_data)
        elif message == '2':
            import json
            str1 = re_data.decode('utf-8')
            js1 = json.dumps(str1, ensure_ascii=False)
            with open('接收信息.json', 'w', encoding='utf-8') as f1:
                f1.write(js1)
        elif re_data.decode('utf-8') == '拜拜':
            print('服務(wù)器:', re_data.decode('utf-8'))
            break
        else:
            str1 = re_data.decode('utf-8')
            print('服務(wù)器:', str1)
    else:
        break
client.close()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 作業(yè): 客戶端和服務(wù)器聊天,可以一直聊天,直到一方發(fā)送’拜拜’。然后就可以和下一個人一直聊 2.客戶端給服務(wù)器發(fā)送...
    2ez4ddf閱讀 226評論 0 0
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,724評論 19 139
  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明AI閱讀 16,240評論 3 119
  • 不要把生活安排得太滿,因為生活給你的超乎你想象 最近每天基本被安排得滿滿的,寫作,健身,讀書,發(fā)聲練習(xí)等,拒絕了很...
    霍楊閱讀 1,161評論 0 1
  • 最近越來越強烈地感覺到自己骨子里的東西是有家族遺傳和積淀的,張家是我們村里大家基本都知曉的家庭,不是因為有多牛,而...
    啦啦啦啦啦啦10001閱讀 175評論 0 0

友情鏈接更多精彩內(nèi)容