[英]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.