我是 Sockets 的新手,请原谅我完全不了解。
我有一个服务器脚本(server.py):
#!/usr/bin/python
import socket #import the socket module
s = socket.socket() #Create a socket object
host = socket.gethostname() #Get the local machine name
port = 12397 # Reserve a port for your service
s.bind((host,port)) #Bind to the port
s.listen(5) #Wait for the client connection
while True:
c,addr = s.accept() #Establish a connection with the client
print "Got connection from", addr
c.send("Thank you for connecting!")
c.close()
和客户端脚本(client.py):
#!/usr/bin/python
import socket #import socket module
s = socket.socket() #create a socket object
host = '192.168.1.94' #Host i.p
port = 12397 #Reserve a port for your service
s.connect((host,port))
print s.recv(1024)
s.close
我转到我的桌面终端并通过键入以下内容启动脚本:
python server.py
之后,我去我的笔记本电脑终端并启动客户端脚本:
python client.py
但我收到以下错误:
文件“client.py”,第 9 行,在
s.connect((主机,端口))
文件“/usr/lib/python2.7/socket.py”,第 224 行,在 meth
返回 getattr(self._sock,name)(*args)
socket.error: [Errno 111] 连接被拒绝
我尝试使用不同的端口号无济于事。但是,我能够在客户端脚本中使用相同的 ip 和 gethostname() 方法获取主机名,并且可以 ping 桌面(服务器)。