Скелет серверного приложения на python
Скелет серверного приложения на python
Python - достаточно мощный язык программирования. Вот пример
серверного приложения, основанного на работе с сокетами:
begin server.py #!/usr/bin/python
# -*- coding: KOI8-R -*-
import socket
def strtohex(str):
tmp = ""
for i in range(0, len(str)):
tmp = tmp + hex(ord(str[i]))+ " "
return tmp[0:-1]
HOST = ""
PORT = 50007
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind((HOST, PORT))
sock.listen(1)
conn, addr = sock.accept()
print "Подсоденились с адреса:", addr
while 1:
data = conn.recv(1024)
if not data:
break
if data[-1] == "\n":
data = data[0:-1]
if data[-1] == "\r":
data = data[0:-1]
print "DATA:", strtohex(data)
if data.upper() == "QUIT":
break
sock.close()
print "Соединение закрыто"
end server.py При запуске скрипт слушает 50007 порт на адресе 127.0.0.1.
Подключиться к нему можно с помошью telnet:
$ telnet 127.0.0.1 50007
Если вводить какие-нибудь строки, то сервре будет посылать
в ответ шестнадцатиричное представление этой символов
это строки. Закончить работу с сервером и остановить его,
можно набрав в telnet-сессии команду "QUIT".