Как получить частичные данные из активного соединения? - PullRequest
0 голосов
/ 09 ноября 2011

Я делаю сценарий, который сохраняет некоторые нет.(любой тип уникального 9-значного номера) при получении страницы.

Страница, с которой мне нужно получить данные, является удаленным загрузчиком файлов.сначала мы отправляем URL-адрес для загрузки в scond paage, который предоставляет после некоторого базового html и кода стиля после строки <script>luid = 999999999;</script>, а затем непрерывно буферизует статус загрузки.так что это займет много времени, чтобы получить страницу и получить 9-значный уникальный номер.Я видел в Firefox, он доставляет раньше.поэтому я думаю, что есть какое-то решение, чтобы загрузить его без ожидания, чтобы загрузить всю страницу.

Я могу использовать любую вещь, поддерживаемую php.как fsockeopen, curl .. anyting ..

спасибо

1 Ответ

1 голос
/ 16 ноября 2011

Если сервер и URL поддерживают диапазоны, вы можете установить опцию PHP / CURL CURLOPT_RANGE, чтобы запросить, чтобы сервер возвращал только первые X байтов страницы.Однако сервер может игнорировать это, поэтому, если это не сработает, вы можете воспользоваться предложением Джона Картрайта и просто прервать загрузку, как только получите нужные данные.Используя PHP / CURL, вы устанавливаете функцию обратного вызова записи с помощью CURLOPT_WRITEFUNCTION и отслеживает загрузку из этой функции, как это происходит.Получив нужные данные, просто верните 0 из функции, и загрузка будет прервана.

...