Я написал два приложения, которые взаимодействуют через сокет.Это код:
Сервер:
import socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind(("",9999))
server_socket.listen(5)
video = True
power = True
print "TCPServer Waiting for client on port 9999"
while 1:
client_socket,address = server_socket.accept()
print "I got a connection from ", address
while 1:
data = client_socket.recv(512)
if data == 'vc' & video == True:
data = 'You can connect to Video'
video = False
client_socket.send(data)
elif data == 'pc' & power == True:
data = 'You can connect to Power Switch'
power = False
client_socket.send(data)
else :
data = 'Device is in use - wait a few secconds'
client_socket.send(data)
Клиент:
import socket
import time
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(("localhost", 9999))
while 1:
data = ( 'Please vc or pc: ' )
time.sleep(5)
if data=='pc' | data=='vc':
print 'send to server: ' + data
time.sleep(5)
client_socket.send(data)
data = client_socket.recv(512)
print data
else:
print 'bad data - please try again'
print data
time.sleep(5)
Я только началмое приключение с розетками и у меня есть проблема.Почему я не вижу ответа сервера?Я вставляю код time.sleep (), чтобы остановить программу и увидеть ответные сигналы, но эти приложения завершают работу после того, как я написал первое сообщение в клиентском терминале, и нажимаю ввод.Пожалуйста, помогите мне.
Я работаю на Windows 32bit.Python 2.6