2018-11-28 Day18-homework

作業(yè):

  1. 客戶端和服務(wù)器聊天,可以一直聊天,直到一方發(fā)送’拜拜’。
    然后就可以和下一個人一直聊

(服務(wù)器)

import socket
server = socket.socket()
server.bind(('10.7.187.72', 8086))
server.listen(1024)
while True:
    conversation, addr = server.accept()
    print('接受到請求!')
    while True:
        recv_data = conversation.recv(1024)
        print('客戶端:', recv_data.decode('utf-8'))
        if recv_data.decode('utf-8') == '拜拜':
            break
        message = input('服務(wù)器:')
        conversation.send(message.encode('utf-8'))
        if message == '拜拜':
            break

(客戶端)

import socket

client = socket.socket()
client.connect(('10.7.187.72', 8086))
while True:
    message = input('客戶端:')
    client.send(message.encode('utf-8'))
    if message == '拜拜':
        break
    recv_data = client.recv(1024)
    print('客戶端:', recv_data.decode('utf-8'))
    if recv_data.decode('utf-8') == '拜拜':
        break

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.72', 8100))
server.listen(1024)
while True:
    conversation, addr = server.accept()
    print('接收到請求!')
    while True:
        recv_data = conversation.recv(1024)

        if recv_data.decode('utf-8') == '1':
            with open('./okok.jpg', 'rb') as f:
                content = f.read()
                conversation.send(content)
                print('客戶端', recv_data.decode('utf-8'))
        elif recv_data.decode('utf-8') == '2':
            with open('./1234.json', 'r', encoding='utf-8') as f1:
                json1 = f1.read()
                print(json1)
                conversation.send(json1.encode('utf-8'))
                print('客戶端','2')
        elif recv_data.decode('utf-8') == '3':
            conversation.send('拜拜'.encode('utf-8'))
            break

(客戶端)

import socket
import json

def get_picture():
    data = bytes()
    while True:
        re_data = client.recv(1024)
        data += re_data
        with open('./圖片.jpg', 'bw') as f:
            f.write(data)
def json1_get():
    re_data = client.recv(1024)
    json1 = re_data.decode('utf-8')
    print(json1)
    with open('./接受.json', 'w') as f:
        json.dump(json1, f)
    print('2(1)')

client = socket.socket()
client.connect(('10.7.187.72', 8100))

while True:
    message = input('客戶端:')
    client.send(message.encode('utf-8'))
    data = bytes()
    # while True:
    #     print('2')
    if message == '1':
        print('接受圖片!')
        get_picture()
    if message == '2':
        print('接受json文件')
        json1_get()
    if message == '3':
        re_data = client.recv(1024)
        print('服務(wù)器:', re_data.decode('utf-8'))
?著作權(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)容

  • 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
  • 年老與生命相遇 有一天,一場重病,踏過生活一大半的他,才看到院落,一位衰朽的老人。坐在溫暖的陽光之下,呈現(xiàn)出一種昏...
    博古林V雙木居士閱讀 2,253評論 8 4
  • 七絕·丁酉年立冬題美人樹 北疆今日盡皆冬, 千里江山白雪封。 南國秋風(fēng)猶自暖, 繁花滿樹舞鶯蜂。 注:美人樹,正名...
    沙湖小景閱讀 775評論 2 3
  • 我,為什么喜歡坐在窗邊 因為窗邊 一面向人,一面向著外面的風(fēng)景 一面復(fù)雜,一面無比的透徹 我在中間,兩相張望 我,...
    氏人閱讀 1,132評論 1 3

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