首先,感谢所有用户,因为我在本网站上学到了很多阅读问题和答案。
我开始学习Python,并且我试图通过套接字将PC上的信息发送到另一台PC。当我连接本地主机的两台计算机时,这一切都很有效。但是,我试图与朋友的电脑联系,我无法做到。我知道(感谢本页前面的主题)服务器需要将端口转发到自己的计算机。我的朋友已经这样做了,我作为客户和他作为服务器,我们还没有能够连接。
我想向您展示我非常简单的代码,因为我确定我错了一些我无法弄明白的东西。
这是客户端脚本:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("Public IP of server",9990))
if True:
print "Conexion establecida"
while True:
mensaje = raw_input("Mensaje a enviar: ")
if mensaje == "close":
break
else:
s.send(mensaje)
print "Mensaje enviado."
s.close()
这是服务器脚本:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(("",9990))
s.listen(1)
sc, addr = s.accept()
print "Conexion establecida con ", str(addr[0])
while True:
recibido = sc.recv(1024)
if recibido == "close":
break
print str(addr[0]) + " dice: ", recibido
sc.close()
s.close()
客户端脚本与服务器的公共IP连接,如果为true,则让用户发送消息。服务器脚本只接收消息并打印出来。我希望这不足以让你失去很多时间。非常感谢您的阅读!