我有客户端和服务器示例代码。我可以从客户端发送消息到服务器,我无法从服务器到客户端接收消息。问题是什么?
Server.py文件
#server
import socket;
import time;
HOST = "localhost";
PORT = 5454;
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM);
s.bind((HOST,PORT));
while True:
print "Client says: " + s.recv(1024);
data = raw_input("Enter..... ") ;
s.sendto(data,(HOST, PORT));
if data=="bye" or s.recv(1024)=="bye":
print "Exiting..................";
time.sleep(1);
break;
Client.py文件
#client
import socket;
import time;
HOST = "localhost";
PORT = 5454;
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM);
s.connect((HOST,PORT));
while True:
data = raw_input("Enter..... ")
s.sendto(data,(HOST,PORT)) ;
print "Server says: " + s.recv(1024);
if data=="bye" or s.recv(1024)=="bye":
print "Exiting...........";
time.sleep(1);
break;
上述代码的问题是什么......
我第一次可以将mesage从客户端发送到服务器。无法将消息服务器发送到clint。必须等待更多时间....但没有回应。帮助我
答案 0 :(得分:1)
您希望收到的数据是您发送的数据的两倍。
print "Server says: " + s.recv(1024);
if data=="bye" or s.recv(1024)=="bye":
每次调用receive都会等待套接字上的数据。存储先收到的消息,然后操纵该消息。
msg = s.recv(1024)
print "Server says: " + msg
if data=="bye" or msg=="bye":