Python套接字聊天问题



我有客户端和服务器的示例代码。我可以从客户端向服务器发送消息,而不能从服务器向客户端接收消息。问题出在哪里?

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。必须等待更多的时间。。。。但没有回应。帮助我

您期望接收的数据是发送数据的两倍。

  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":

最新更新