0
我有一個python聊天程序server.py和client.py。它適用於我的本地系統,但是當我嘗試連接到遠程主機,如koding.com ubuntu-vm或cloud9 ubuntu-vm時,它不起作用。Python Socket聊天程序在遠程系統中不起作用
我無法通過網絡訪問遠程客戶端。
這個link暗示了我的一些問題。
我的目標是利用互聯網不是局域網
下面是聊天server.py
import socket
import thread
HOST = ''
PORT = 4444
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
while True:
s.listen(1)
conn, addr = s.accept()
print 'Connected by', addr
while 1:
data = conn.recv(1024)
if data[:4] == "exit":
print 'Parted by', addr
else:
conn.send(data),
if not data:
break
print data
conn.close
下面是聊天client.py聊天
import socket
getHOST = (raw_input('Enter the Host: '))
print getHOST
HOST = getHOST
PORT = 4444
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
NICK = raw_input('Welcome, Enter your name: ')
while True:
MSG = raw_input('>> ')
MSG = NICK + ': ' + MSG
if MSG[5:] == "exit":
break
s.send(MSG)
data = s.recv(1024)
print data
s.close()
*不起作用*沒用!請給出確切的錯誤,而不是讓別人猜測2015年可能發生了什麼 –
,我建議你使用Python 3 :) –
如果你的應用程序在本地工作,但不能從遠程系統工作,那麼你很可能需要打開對4444端口的訪問看起來cloud9正在Google雲上運行,所以你可能在那裏運氣不好(他們只支持一些特定的服務)。 Koding虛擬機託管在AWS上,他們聲稱所有的端口都是打開的。也許你的本地網絡在4444端口有問題? –