簡體   English   中英

將客戶端連接到服務器,python

[英]Connecting client to server, python

我的服務器和客戶端有問題。 我需要客戶端向服務器發送信息,服務器將信息發回,這個過程再次重復。 我能夠讓客戶端連接到服務器並在第一輪發送信息,但在我使用函數 conn.shutdown(1) 關閉發送端后,我似乎無法弄清楚如何讓服務器再次偵聽客戶端)。 我嘗試再次連接到該端口,但收到一條錯誤消息,指出“傳輸端點已連接”。 有什么建議?

嘗試使用線程(多線程)-

服務器應用程序

#!/usr/bin/python           # This is server.py file

import socket               # Import socket module

s = socket.socket()         # Create a socket object
host = socket.gethostname() # Get local machine name
port = 12345                # Reserve a port for your service.
s.bind((host, port))        # Bind to the port

s.listen(5)                 # Now wait for client connection.


def clientthread(conn):
    conn.send('connected') 
    try:
        while True:        
            data = conn.recv(1024)
            processData(conn,data)
            if not data:
                break
    except Exception as ex:
        print ex
    conn.close()



while True:
   conn, addr = s.accept()    
   print 'Got connection from', addr
   thread.start_new_thread(clientthread ,(conn,))

s.close()

客戶端應用程序

#!/usr/bin/python           # This is client.py file

import socket               # Import socket module

s = socket.socket()         # Create a socket object
host = socket.gethostname() # Get local machine name
port = 12345                # Reserve a port for your service.

s.connect((host, port))
print s.recv(1024)
s.close                     # Close the socket when done

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM