2023年9月10日 星期日

Python UDP Server 與 Client 程式與實驗來進行程式修正

        目前要測試UDP Server 與 UDP Client,藉此來修正程式碼,讓其自動化。以Echo Server 來進行,目前程式碼來自資料來源1.Python UDP Server/Client 網路通訊教學

條件: 1 個 Server 與 1 個 Client

檔案名稱:Py3UdpServer.py
檔案內容:
import socket

host = '192.168.100.101'
port = 7000

s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
s.bind((host,port))

print('Server start at:%s:%s' % (host,port))
print('wait for connection...')

while True:
    indata, addr = s.recvfrom(1024)
    print('recvfrom ' + str(addr) + ': ' + indata.decode())

    outdata = 'echo ' + indata.decode()
    s.sendto(outdata.encode(), addr)

s.close()

檔案名稱:Py3UdpClient.py
檔案內容:
import socket

host = '192.168.100.101'
port = 7000
server_addr = (host,port)

s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

while True:
    outdata = input('Please input message: ')
    print('sendto ' + str(server_addr) + ': ' + outdata)
    s.sendto(outdata.encode(),server_addr)

    indata,addr = s.recvfrom(1024)
    print('recvfrom ' + str(addr) + ': '+ indata.decode())

測試結果:

Server

Client

以Echo Server 來進行,目前程式碼來自資料來源2.Multi-Client-Socket-using-UDP

條件: 1 個 Server 與 4 個 Client



沒有留言:

張貼留言

資訊科技課堂中指導學生使用教育版Gemini ,如何讓學生不敢對教育版Gemini亂問問題

        自從Google 教育版可以讓教師、學生免費使用 Gemini。課堂中,老師可以在平板教學、資訊科技教學等課堂中,指導學生使用 Gemini。但是調皮的學生總是隨著自由想像,提出一些很奇怪的問題。但是老師可以怎麼做?讓學生不敢亂問問題?         一、如何使...