Generowanie odpowiedzi HTTP
Tworzenie obiektu odpowiedzi Response rozpoczyna się w obiekcie zapytania (metoda createResponse()). Każda wersja protokołu HTTP posiada osobną wersje klasy dziedziczącej po Response (Response09, Response10, Response11). W pierwszej kolejności sprawdzana jest wersja protokołu którym zostało wysłane zapytanie. Jeżeli odpowiada którejś z wersji klasy Response, tworzony jest z niej nowy obiekt. W przypadku, błędnej nazwy protokołu HTTP, tworzony jest obiekt dla protokołu HTTP/1.1 i ustawiany dla niego status o błędnym zapytaniu.
Klasa ogólna Response zawiera szereg metod ułatwiających generowanie komunikatów o błędach. Wszystkie wersje protokołu zwracają do klienta informacje o błędach i dużo z tych błędów pokrywa się z komunikatami innych wersji protokołu. W klasie ogólnej Response znalazły się również metody do:
-
sprawdzania, czy połączenie powinno być przerwane po wysłaniu odpowiedzi;
-
ustawiania wersji protokołu dla odpowiedzi;
-
synchronizowania nagłówków wygenerowanych przez aplikację CGI z nagłówkami dołączanymi do odpowiedzi dla konkretnej wersji protokołu.
Serwer HTTP 