Page 93 - 6734
P. 93
GET /hello.html HTTP/1.1
Host: localhost
(пустий рядок)
Метод GET використовується для запиту вмісту вказаного
ресурсу, а метод POST – для передачі даних вказаному ресурсу.
Приклад HTTP-відповіді сервера з кодом стану 200 (виконано):
HTTP/1.0 200 OK
Content-type: text/html
(пустий рядок)
<html><body>Hello</body></html>
В прикладі створено BaseHTTPServer.HTTPServer сервер із
підтримкою запитів GET, HEAD, POST і CGI-програм [5, 19]. У
даному випадку усі CGI-програми повинні бути розташовані в
каталозі cgi поряд із сервером. Запустіть сервер та в адресному
рядку браузера введіть:
http://localhost/hello.html
import os, sys
import BaseHTTPServer, CGIHTTPServer
with open('hello.html', 'w') as f: # створити
документ HTML
f.write("<html><body>Hello</body></html>")
class Handler(CGIHTTPServer.CGIHTTPRequestHandler): #
обробник запитів
cgi_directories = ["/cgi"] # каталог з CGI-
програмами
srvraddr = ('localhost', 80) # ім'я хоста, номер
порта
srvrobj = BaseHTTPServer.HTTPServer(srvraddr,
Handler) # сервер
srvrobj.serve_forever() # обслуговувати клієнтів до
завершення
92