Рассмотрение приложения waplib.com
Рассмотрение приложения waplib.com
При запуске приложения waplib.com выполняется Peri-сценарий index.cgi, чтобы установить тип браузера пользователя. Тип браузера определяется путем анализазначения параметра НТТР_АССЕРТ, получаемого от браузера, запрашивающего сервис. Сценарий index.cgi реализуется с помощью следующего программного кода:
#!/usr/bin/perl
$WAPwml = ""; $WAPhdml = "";
$accept = $ENV{"HTTP_ACCEPT"};
if ($accept =~ /wml/) { $WAPwml = "wml"; }
if ($accept =~ /hdml/) { $WAPhdml = "hdml"; }
if (($WAPwml eq "") && ($WAPhdml eq "")) { print "Location: http://www.waplib.com/WebStart.html\n\n"; }
elsif (($WAPwml eq "wml") && ($WAPhdml eq "")) { print "Location: http://www.waplib.com/Demos.wml\n\n"; }
elsif (($WAPwml eq "") && ($WAPhdml eq "hdml")) { print "Location: http://www.waplib.com/Demos.hdml\n\n"; }
else { print "Location: http://www.waplib.com/Both.hdml\n\n"; }
Приложение использует функцию $ENV для выборки значения переменнойНТТР_АССЕРТ. Затем программа выполняет проверку, чтобы определить, включает лизначение переменной буквы wml. При положительном результате (когда буквы wmlприсутствуют), программный код присваивает значение wml переменной $WAPwml,которую позже он может проверить с помощью конструкции условного перехода if.Далее выполняется аналогичная проверка в отношении букв hdml. Если ни переменной $WAPwml, ни переменной $WAPhdml не присвоены значения, то это означает, чтобраузер не поддерживает ни WML, ни HDML, вследствие этого приложение запускаетHTML-файл WebStarthtml, отображающий сообщение о скором выходе книги «WAP вдействии. Доступ к Интернет-сайтам через сотовый телефон».
Заметьте, что сценарий запускает WML-, HDML- или HTML-файлы просто путем печати слова Location (Адрес), за которым следует требуемый URL. Когда браузервстречает URL в таком формате, он совершает ветвление, переходя на соответствующий адрес.
В реальном приложении ваш HTML-сайт, вероятно, будет выполнять обработкуданных, связанную или не связанную с WML- и HDML-сайтами. HTML-файлWebStart.html содержит следующий программный код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html> <head> <title>WAPLIB</title> </head>
<body> <div align="center"><h1>Wireless Applications Programmer's Library</h1></div><br> <div align="center"><h2>Coming soon</h2></div>
</body> </html>