未使用TCP连接客户端IP地址

时间:2019-04-05 23:19:23

标签: python macos sockets

我正在尝试接收来自客户端通过套接字发送的消息。以下是我用来接收该消息的代码

 def recieveData(serverPort):
      with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s 
            s.bind((socket.gethostbyname(socket.gethostname()), serverPort)) #server bind to port               
            s.listen(5) #listen for connections
            while True:
                  c, addr = s.accept() #accept client connection
                  dataRecieved = c.recv(1024).decode() #get data sent from client
                  c.close() 
                  return dataRecieved

这在我的Windows机器上可以使用,但是在我的Mac上不返回任何内容。我还在Mac上注意到未使用变量addr,但在Windows计算机上使用了该变量。还有以下

  print(socket.gethostbyaddr(socket.gethostbyname(socket.gethostname())))

在我的Mac上产生以下错误,但在Windows上可以使用

  

socket.herror:[Errno 1]未知主机`

这是为什么?如果我得到未使用addr的警告,我认为它会起作用。

0 个答案:

没有答案