256
Rozdział 6.
Skorzystaj ze źródła
Dane dotyczące obiektu
żądania zostały zapisane
w pliku, ale przeglądarka
internetowa z jakiegoś
powodu odmawia
wyrenderowania ich
na ekranie.
Sprawdzanie surowych danych za pomocą przeglądarki źródeł strony
Pamiętaj, że funkcja
log_request
zapisuje dwa elementy danych dla każdego żądania, które loguje: obiekt tego
żądania oraz wyniki wywołania funkcji
search4letters
. Jednak gdy oglądasz log (korzystając z URL-a
/viewlog
),
widzisz jedynie dane związane z wynikami. Czy przejrzenie źródła strony (tzn. surowych danych zwróconych przez
aplikację WWW) da nam jakąś wskazówkę na temat tego, co stało się z obiektem żądania?
Poniżej możesz sprawdzić, co zobaczyliśmy, gdy użyliśmy przeglądarki
Firefox, aby przejrzeć surowe dane. Fakt,
że każdy z obiektów żądania jest tu wyświetlony na czerwono, to kolejna wskazówka, że coś jest nie tak z naszymi
danymi logu.
Powód, dla którego dane żądania nie renderowane na ekranie, jest dość prozaiczny, a to, że
Firefox
zaznaczył te dane na czerwono, pomaga zrozumieć, co się tu dzieje. Okazuje się, że z samymi danymi żądania
wszystko jest w jak najlepszym porządku. Wydaje się jednak, że dane umieszczone w nawiasach trójkątnych
(tzn. pomiędzy znakami
<
oraz
>
) w jakiś sposób wyprowadzają przeglądarki z równowagi. Gdy napotykają
one otwierający nawias trójkątny, traktują wszystko, co się po nim znajduje — aż do odpowiedniego nawiasu
zamykającego — jako znacznik HTML. Z uwagi na to, że
<Request>
nie jest prawidłowym znacznikiem
języka HTML, nowoczesne przeglądarki po prostu ignorują ten element i odmawiają renderowania
jakiegokolwiek tekstu, który znajduje się w nawiasie. Z taką sytuacją mamy tu do czynienia, i to właśnie
stanowi wyjaśnienie znikających danych żądań. Nadal jednak chcielibyśmy widzieć te dane, gdy przeglądamy
stronę dostępną pod URL-em
/viewlog
.
Potrzebujemy tu jakiegoś sposobu, aby poinformować przeglądarkę, że nawiasów trójkątnych zawierających
obiekt żądania nie powinna uważać za znacznik HTML, lecz za zwykły tekst. Mamy szczęście, ponieważ
framework Flask zapewnia funkcję, która może nam tu pomóc.

Get Python Rusz głową! Wydanie II now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.