Если URL был интерпретирован успешно, то вызывается метод connect () для инициализации неблокирующего подключения. Если в этот момент возникает ошибка, снова выдается сообщение об ошибке и возвращается значение undef.
Следующая задача состоит в преобразовании пути доступа URL в локальное имя файла. В данной реализации программы локальный путь доступа создается на основе имени удаленного хоста и удаленного пути доступа. Локальный путь доступа строится относительно текущего каталога. В случае URL, который оканчивается косой чертой, применятся имя локального файла index.html в соответствии с соглашением, которому обычно следуют Web-cepeep. Это имя локального файла в конечном итоге становится переменной экземпляра localpath. Теперь первоначальный URL, объект сокета и имя локального файла записываются в xeш включенный в пространство имен с помощью функции bless ( ). Устанавливается также переменная экземпляра status, которая применяется для отслеживания состояния соединения. Вначале соединение находится в состоянии ожидания “waiting”. После завершения неблокирующего подключения оно будет установлено в состояние чтения заголовка “read header”, а затем, после получения заголовка HTTP, в состояние чтения тела странице “reading body”.
Строка 32. Средство доступа socket (). Метод socket ( ) представляет собой общедоступную процедуру, которая возвращает сокет объекта HTTPFetch.