Server 執行後等待Clinet傳送訊息,Client傳送訊息後,Server接後到訊息印出且回傳收到。
Server:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import socket
Host = '127.0.0.1' Port = 8000
#設定IP4連結及TCP/IP連結方式。 with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock: sock.bind((Host, Port)) print(Host,':'+ str(Port) + ' Wait for connection.....') sock.listen(1) #等待連結。 conn, ClientIp = sock.accept() print('Client:' + str(ClientIp))
while True: #接收訊息。 data = conn.recv(1024) #印出接收到的訊息內容。 print('receive: ' , data.decode()) #回傳訊息表示收到。 conn.send('received'.encode())
|
Client:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | import socket
Host = '127.0.0.1' Port = 8000
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: try: #判斷Server是否可以連線,無法連線錯誤碼10061。 if s.connect_ex((Host, Port))==10061: print('無法連線') else: while True: #輸入要傳送的資料。 Indata = input('Input message: ') #印出傳送的訊息。 #rint('send: ' + Indata) #傳送輸入的訊息到Server。 s.send(Indata.encode()) #接收Server回傳訊息。 data = s.recv(1024) #印出收到訊息。 print(data.decode()) except Exception as e: print(f'An Error occurred:',e)
|
沒有留言:
張貼留言