Форум сайта python.su
Код клиента:
import socket——————–
HOST = ‘IpOfServerComp’
PORT = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send('Hello, world')
data = s.recv(1024)
s.close()
print ‘Received’, repr(data)
import socketВместо IpOfServerComp на клиенте ввожу ip-адрес сервера. Сам он создается нормально, ожидает подключений, но клиент выбрасывает ошибки:
HOST = ‘localhost’
PORT = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print ‘Connected by’, addr
while 1:
data = conn.recv(1024)
if not data: break
conn.send(data)
conn.close()
File “window.py”, line 5, in <module>Хелп =). Что не так делаю.
s.connect((HOST, PORT))
File “<string>”, line 1, in connect
socket.error: Connection refused
Отредактировано (Апрель 22, 2009 00:07:56)
Офлайн
У вас сервер на лупбэке слушает, а коннектитесь вы к нему на другой интерфейс судя по тому, что вы написали.
Офлайн
А что исправить нужно?
Офлайн
Вместо HOST используйте socket.gethostname() - это разрешит использование сервера не только локально.
Офлайн
Или пустую строку, тогда будет слушать все интерфейсы.
Офлайн
Всем спасибо, проблема решена.
Офлайн