pdf @ download @ do ÂściÂągnięcia @ pobieranie @ ebook

[ Pobierz całość w formacie PDF ]

 

Rozdział 22.
Aplikacje internetowe









C:\Dokumenty\Roboczy\Delphi 4 dla kazdego\22.doc              817









Rozdzia³ 22. ¨ Aplikacje internetowe                            833

Są tacy, którzy twierdzą, że Internet jest tylko przemijającą modą, zaś korzystanie z niego – przejawem szacownego snobizmu. Jeżeli jesteś jednym z nich – niestety, jesteś w błędzie. Internet rozrósł się już do ogromnych rozmiarów i rozrasta się gwałtownie z każdym dniem. Witryny WWW przestały być już tylko ciekawostkami, stając się jednym z pełnoprawnych narzędzi businessu. Internet to również transfer plików, poczta elektroniczna i usługi komercyjne na odległość.

Skoro nic więc nie zapowiada zmierzchu egzystencji Internetu, warto pokusić się o nabycie umiejętności tworzenia oprogramowania internetowego. Niniejszy rozdział poświęcony jest pewnym aspektom programowania internetowego przy użyciu Delphi.

Komponenty internetowe
dostępne w Delphi

Komponenty internetowe dostępne na stronie Internet Palety Komponentów dzielą się na dwie kategorie. Pierwsza z nich to komponenty dostarczone przez firmę NetMasters; są to „rodowite” komponenty VCL, z jednym wyjątkiem komponentu THTML, który jest kontrolką ActiveX. Lista kontrolek NetMasters wraz z opisem każdej z nich znajduje się w tabeli 22.1; została ona uporządkowana według kolejności występowania kontrolek w Palecie Komponentów.

Tabela 22.1. Internetowe kontrolki NetMasters

Kontrolka

Przeznaczenie

TNMDayTime

Pobiera datę i czas z internetowych serwerów daty i czasu.

TNMEcho

Wysyła i odbiera tekst z internetowych serwerów echa.

TNMFinger

Pobiera informacje na temat użytkownika z serwera finger.

TNMFTP

Przeprowadza transfer plików między komputerami w sieci za pomocą protokołu FTP (File Transfer Protocol).

cd. na następnej stronie

Tabela 22.1. cd. Internetowe kontrolki NetMasters

Kontrolka

Przeznaczenie

TNMHTTP

Przeprowadza transfer plików przy użyciu protokołu HTTP
(Hypertext Transfer Protocol). Zazwyczaj dokumenty w języku HTML są wyświetlane przez przeglądarkę WWW. Do ściągania dokumentów HTML, które nie wymagają wyświetlenia w przeglądarce, stosowana jest kontrolka THTTP.

TNMMsg

Wysyła proste komunikaty tekstowe (ASCII) przy użyciu protokołu TCP/IP.

TNMMSGServ

Odbiera komunikaty wysłane przy użyciu kontrolki TNMMsg.

TNMNNTP

Wysyła i odbiera komunikaty z internetowych serwerów grup
dyskusyjnych przy użyciu protokołu NNTP (Networking News Transfer Protocol).

TNMPOP3

Odbiera wiadomości pocztowe

TNMUUProcessor

Koduje lub dekoduje pliki zawierające informacje typu MIME lub UU.

TNMSMTP

Wysyła pocztę poprzez serwery pocztowe SMTP
(Simple Mail Transfer Protocol).

TNMStrm

Wysyła strumienie danych do stacji lokalnej lub internetowego serwera strumieni.

TNMStrmServ

Odbiera strumienie wysłane przez kontrolkę TNMStrm.

TNMTime

Pobiera datę i czas z internetowych serwerów czasu.

TNMUDP

Dokonuje transferu danych poprzez sieć przy użyciu protokołu UDP (User Datagram Protocol).

TPowersock

Implementuje interfejs Winsock API.

TNMGeneralServer

Stosowana dla ogólnych zastosowań w serwerach TCP/IP.

THTML

Wyświetla pliki HTML (Hypertext Markup Language).
Jest to komponent przeglądarki WWW.

TNMURL

Konwertuje dane URL do postaci czytelnego łańcucha i odwrotnie

Drugą kategorię kontrolek stanowią komponenty VCL firmy Borland. W skład Delphi w wersji Client/Server i Professional wchodzą komponenty TClientSocket i TServerSocket. Komponenty Web Broker (TWebDispatcher, TPageProducer, TQueryTableProducer i TDataSetTableProducer) są dostępne tylko w wersji Client/Server. Lista internetowych komponentów VCL przedstawiona została w tabeli 22.2.

Tabela 22.2. Rodzime komponenty internetowe VCL

Kontrolka

Opis

TClientSocket

Zarządza połączeniami gniazdowymi TCP/IP od strony klienta.

TServerSocket

Zarządza połączeniami gniazdowymi TCP/IP od strony serwera.

TWebDispatcher

Konwertuje zwykły moduł danych do postaci sieciowego modułu danych.

Tabela 22.2. cd. Rodzime komponenty internetowe VCL

Kontrolka

Opis

TPageProducer

Umożliwia budowanie dynamicznych stron HTML.

TQueryTableProducer

Generuje dokument HTML na podstawie danych zwracanych przez komponent TQuery.

TDataSetTableProducer

Generuje dokument HTML na podstawie danych zwracanych przez komponent TDataSet.

Przedstawione grupy komponentów dają możliwości wystarczające do tworzenia wysokiej jakości aplikacji internetowych.

Budowa przeglądarki sieciowej

Do najbardziej dostrzegalnych zadań programowania związanego z Internetem należy tworzenie przeglądarek sieciowych. Jest to najbardziej fascynujące zadanie, które ponadto może okazać się również jednym z najłatwiejszych zadań.

Komu potrzebna jest jeszcze jedna przeglądarka?

Pytanie to jest godne zastanowienia. W końcu wszędzie na świecie królują już Netscape Navigator i Microsoft Internet Explorer, komu więc tak naprawdę potrzebny będzie kolejny nowy model przeglądarki? Nie masz przecież zamiaru budować aplikacji, która będzie konkurować z dwoma powyższymi produktami. Z drugiej strony można wyobrazić sobie firmę zatrudniającą setki lub nawet tysiące pracowników, którzy wymagają dostępu do sieci WWW. Zakupienie licencji na tysiące kopii komercyjnej przeglądarki sieciowej może okazać się bardzo drogim przedsięwzięciem. Napisanie w ciągu kilku godzin dobrej jakości przeglądarki może zaoszczędzić takiej firmie sporo środków finansowych.

Innym powodem, dla którego firma chciałby posiadać niestandardową przeglądarkę WWW jest ograniczenie dostępu do sieci. Dla przykładu, może zaistnieć taka sytuacja, kiedy to pracownicy będą musieli od czasu do czasu odwiedzać określone strony w sieci. W samodzielnie stworzonej przeglądarce można ograniczyć dostęp do sieci pozwalając na łączenie się tylko z autoryzowanymi stronami WWW. Nasuwa się tutaj inna myśl – stworzona samodzielnie przeglądarka doskonale nadaje się dla dzieci!

W końcu, powodem najbardziej przemawiającym za stworzeniem użytkowej przeglądarki sieciowej jest intranet. Intranet jest siecią lokalną zbudowaną w oparciu o technologie internetowe. Intranet może zawierać różnorodne informacje przeznaczone na wewnętrzny użytek firmy – zyski firmy, polityka firmy, książka adresowa pracowników, plany spotkań lub nawet firmowa liga koszykówki. Użytkowa przeglądarka może pozwolić na dostęp do intranetu i jednocześnie uniemożliwić korzystanie z Internetu.

Biorąc pod uwagę powyższe rozważania spróbujemy zbudować prostą przeglądarkę WWW. Zapewne zdziwi Cię łatwość, z jaką zostanie zbudowana ta aplikacja.

Pierwsze kroki procesu budowania przeglądarki

Kontrolka THTML jest gotową do wykorzystania przeglądarką sieciową. Wszystko, co trzeba zrobić, to umieścić ją w formularzu i wywołać metodę RequestDoc. Podejście takie może wydawać się nadmiernie uproszczone, niemniej jednak dokładnie w ten sposób można wyświetlić dokument znajdujący się w dowolnym miejscu Internetu. Oto jak szybko można stworzyć aplikację przeglądarki sieciowej:

1.                                       Rozpocznij projekt nowej aplikacji. Zmień właściwość Name formularza na WebMain oraz właściwość Caption na EZ Web Browser.

2.                                       Umieść w formularzu komponent Panel, zmień jego właściwość Align na alTop oraz właściwość Height na 60. Usuń wartość właściwości Caption.

3.                                       Umieść w panelu komponent ComboBox. Przesuń go w górną część panelu i rozciągnij tak, aby jego rozmiar był równy rozmiarowi panelu. Zmień właściwość Name na URLComboBox. Zmień właściwość Text na dowolny adres URL (na przykład http://www.helion.com.pl lub http://www.turbopower.com). Kliknij podwójnie na właściwość Constraints i zmień ograniczenie AnchorHorz na akStretch.

4.                                       Umieść w formularzu komponent StatusBar. Zostanie on automatycznie umieszczony w dolnej części formularza. Zmień jego właściwość Name na StatusBar i właściwość SimplePanel na True.

5.                                       Mniej więcej pośrodku formularza umieść komponent HTML. Zmień jego właściwość Align na alClient. Komponent wypełni całą dostępną przestrzeń. Zmień jego właściwość Name na HTML.

W tej chwili formularz powinien wyglądać tak jak przedstawia to rysunek 22.1. Jeżeli tak nie jest, możesz spróbować dopasować go lub pozostawić bez zmian. (Odrobina indywidualizmu nigdy nie zaszkodzi.)

W tym miejscu powinieneś zapisać cały projekt. Zapisz formularz jako WebBrwsU.pas i projekt jako WebBrows.dpr. Teraz zadbamy o to, aby przeglądarka stała się narzędziem użytecznym.

 

Rysunek 22.1.

Przeglądarka po wykonaniu kilku pierwszych kroków

6.                                       Kliknij na obiekcie combo, we wnętrzu wygenerowanego szkieletu procedury zdarzeniowej wpisz następujący kod:

 

if URLComboBox.Text<>'' then

  HTML.RequestDoc(URLComboBox.Text);

Po sprawdzeniu, czy tekst w polu listy nie jest łańcuchem pustym następuje wywołanie metody RequestDoc, która ładuje żądany dokument.

7.                                       Teraz wygeneruj procedurę obsługującą zdarzenie OnKeyPress. W jej ciele funkcji umieść następujący kod:

 

i...

[ Pobierz całość w formacie PDF ]
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • czarkowski.pev.pl