Клиент
абстрактный класс Клиент
Клиент имитирует браузер.
Чтобы сделать фактический запрос, необходимо реализовать метод doRequest().
Если вы хотите иметь возможность запускать запросы в собственном процессе (флаг изоляции), необходимо также реализовать метод getScript().
Свойства
| protected | $history | ||
| protected | $cookieJar | ||
| protected | $server | ||
| protected | $internalRequest | ||
| protected | $request | ||
| protected | $internalResponse | ||
| protected | $response | ||
| protected | $crawler | ||
| protected | $insulated | ||
| protected | $redirect | ||
| protected | $followRedirects |
Методы
| __construct(array $server = array(), История $history = null, CookieJar $cookieJar = null) | ||
| followRedirects(bool $followRedirect = true) Устанавливает, следует ли автоматически перенаправлять или нет. | ||
| bool | isFollowingRedirects() Возвращает, следует ли клиент автоматически перенаправлениям или нет. | |
| setMaxRedirects(int $maxRedirects) Устанавливает максимальное количество перенаправлений, которые может отслеживать робот. | ||
| int | getMaxRedirects() Возвращает максимальное количество перенаправлений, которые может отслеживать робот. | |
| insulate(bool $insulated = true) Устанавливает флаг изоляции. | ||
| setServerParameters(array $server) Устанавливает параметры сервера. | ||
| setServerParameter(string $key, string $value) Устанавливает один параметр сервера. | ||
| string | getServerParameter(string $key, string $default = '') Получает один параметр сервера для указанного ключа. | |
| Crawler | xmlHttpRequest(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true) | |
| История | getHistory() Возвращает экземпляр History. | |
| CookieJar | getCookieJar() Возвращает экземпляр CookieJar. | |
| Crawler | getCrawler() Возвращает текущий экземпляр Crawler. | |
| Response | getInternalResponse() Возвращает текущий экземпляр Response BrowserKit. | |
| object | getResponse() Возвращает текущий экземпляр ответа исходного запроса. | |
| Request | getInternalRequest() Возвращает текущий экземпляр Request BrowserKit. | |
| object | getRequest() Возвращает текущий экземпляр исходного объекта Request. | |
| Crawler | click(Link $link) Нажимает на заданную ссылку. | |
| Crawler | submit(Form $form, array $values = array()) Отправляет форму. | |
| Crawler | request(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true) Обращается к URI. | |
| object | doRequestInProcess(object $request) Выполняет запрос в другом процессе. | |
| object | doRequest(object $request) Выполняет запрос. | |
| getScript(object $request) Возвращает скрипт для выполнения, когда запрос должен быть изолирован. | ||
| object | filterRequest(Request $request) Фильтрует запрос BrowserKit до исходного. | |
| Response | filterResponse(object $response) Фильтрует исходный ответ до ответа BrowserKit. | |
| Crawler|null | createCrawlerFromContent(string $uri, string $content, string $type) Создает Crawler. | |
| Crawler | back() Возвращается назад в истории браузера. | |
| Crawler | forward() Переходит вперёд в истории браузера. | |
| Crawler | reload() Перезагружает текущий браузер. | |
| Crawler | followRedirect() Следовать перенаправлениям? | |
| restart() Перезапускает клиент. | ||
| string | getAbsoluteUri(string $uri) Принимает URI и преобразует его в абсолютный, если он не является абсолютным. | |
| Crawler | requestFromRequest(Request $request, bool $changeHistory = true) Выполняет запрос из объекта Request напрямую. |
Подробности
__construct(array $server = array(), История $history = null, CookieJar $cookieJar = null)
Параметры
| array | $server | Параметры сервера (аналогичны $_SERVER) |
| История | $history | Экземпляр History для хранения истории браузера |
| CookieJar | $cookieJar | Экземпляр CookieJar для хранения куки |
followRedirects(bool $followRedirect = true)
Устанавливает, следует ли автоматически перенаправлять.
Параметры
| bool | $followRedirect | Следовать ли перенаправлению |
bool isFollowingRedirects()
Возвращает, следует ли клиент автоматически перенаправлению.
Возвращаемое значение
| bool |
setMaxRedirects(int $maxRedirects)
Устанавливает максимальное количество перенаправлений, которые может отслеживать робот.
Параметры
| int | $maxRedirects |
int getMaxRedirects()
Возвращает максимальное количество перенаправлений, которые может отслеживать робот.
Возвращаемое значение
| int |
insulate(bool $insulated = true)
Устанавливает флаг изоляции.
Параметры
| bool | $insulated | Использовать изоляцию запросов или нет |
Исключения
| RuntimeException | Если компонент Symfony Process не установлен |
setServerParameters(array $server)
Устанавливает параметры сервера.
Параметры
| array | $server | Массив параметров сервера |
setServerParameter(string $key, string $value)
Устанавливает отдельный параметр сервера.
Параметры
| string | $key | Ключ параметра |
| string | $value | Значение параметра |
string getServerParameter(string $key, string $default = '')
Получает отдельный параметр сервера по заданному ключу.
Параметры
| string | $key | Ключ параметра для получения |
| string | $default | Значение по умолчанию, если ключ не определён |
Возвращаемое значение
| string | Значение параметра |
Crawler xmlHttpRequest(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true)
Параметры
| string | $method | |
| string | $uri | |
| array | $parameters | |
| array | $files | |
| array | $server | |
| string | $content | |
| bool | $changeHistory |
Возвращаемое значение
| Crawler |
История getHistory()
Возвращает экземпляр History.
Возвращаемое значение
| История | Экземпляр History |
CookieJar getCookieJar()
Возвращает экземпляр CookieJar.
Возвращаемое значение
| CookieJar | Экземпляр CookieJar |
Crawler getCrawler()
Возвращает текущий экземпляр Crawler.
Возвращаемое значение
| Crawler | Экземпляр Crawler |
Response getInternalResponse()
Возвращает текущий экземпляр Response BrowserKit.
Возвращаемое значение
| Response | Экземпляр Response BrowserKit |
объект getResponse()
Возвращает текущий экземпляр ответа источника.
Ответ источника — это экземпляр ответа, возвращаемый кодом, обрабатывающим запросы.
Возвращаемое значение
| объект | Экземпляр ответа |
См. также
| doRequest() |
Request getInternalRequest()
Возвращает текущий экземпляр Request BrowserKit.
Возвращаемое значение
| Request | Экземпляр Request BrowserKit |
объект getRequest()
Возвращает текущий экземпляр запроса источника.
Запрос источника — это экземпляр запроса, отправляемый коду, обрабатывающему запросы.
Возвращаемое значение
| объект | Экземпляр запроса |
См. также
| doRequest() |
Crawler click(Link $link)
Нажимает на заданную ссылку.
Параметры
| Ссылка | $link |
Возвращаемое значение
| Crawler |
Crawler submit(Форма $form, array $values = array())
Отправляет форму.
Параметры
| Форма | $form | |
| array | $values |
Возвращаемое значение
| Crawler |
Crawler request(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true)
Обращается к URI.
Параметры
| string | $method | Метод запроса |
| string | $uri | Запрашиваемый URI |
| array | $parameters | Параметры запроса |
| array | $files | Файлы |
| array | $server | Параметры сервера (HTTP-заголовки ссылаются с префиксом HTTP_ как в PHP) |
| string | $content | Сырые данные тела |
| bool | $changeHistory | Обновлять историю или нет (используется только внутренне для back(), forward() и reload()) |
Возвращаемое значение
| Crawler |
protected объект doRequestInProcess(объект $request)
Выполняет запрос в другом процессе.
Параметры
| объект | $request | Экземпляр исходного запроса |
Возвращаемое значение
| объект | Экземпляр исходного ответа |
Исключения
| RuntimeException | При обработке возвращается код выхода |
abstract protected объект doRequest(объект $request)
Выполняет запрос.
Параметры
| объект | $request | Экземпляр исходного запроса |
Возвращаемое значение
| объект | Экземпляр исходного ответа |
protected getScript(объект $request)
Возвращает скрипт для выполнения, когда запрос должен быть изолирован.
Параметры
| объект | $request | Экземпляр исходного запроса |
Исключения
| LogicException | При нереализованном абстрактном классе |
protected object filterRequest(Request $request)
Фильтрует запрос BrowserKit до исходного.
Параметры
| Request | $request | Запрос BrowserKit для фильтрации |
Возвращаемое значение
| object | Экземпляр исходного запроса |
protected Response filterResponse(object $response)
Фильтрует исходный ответ до BrowserKit.
Параметры
| object | $response | Исходный ответ для фильтрации |
Возвращаемое значение
| Response | Экземпляр ответа BrowserKit |
protected Crawler|null createCrawlerFromContent(string $uri, string $content, string $type)
Создаёт обходчик.
Этот метод возвращает null, если компонент DomCrawler недоступен.
Параметры
| string | $uri | URI |
| string | $content | Содержание для использования обходчиком |
| string | $type | Тип содержимого |
Возвращаемое значение
| Crawler|null |
Crawler back()
Возвращается в истории браузера.
Возвращаемое значение
| Crawler |
Crawler forward()
Переходит вперёд в истории браузера.
Возвращаемое значение
| Crawler |
Crawler reload()
Перезагружает текущий браузер.
Возвращаемое значение
| Crawler |
Crawler followRedirect()
Следовать перенаправлениям?
Возвращаемое значение
| Crawler |
Исключения
| LogicException | Если запрос не был перенаправлением |
restart()
Перезапускает клиент.
Очищает историю и все cookie.
protected string getAbsoluteUri(string $uri)
Принимает URI и преобразует его в абсолютный, если он не является абсолютным.
Параметры
| string | $uri | URI |
Возвращаемое значение
| string | Абсолютный URI |
protected Crawler requestFromRequest(Request $request, bool $changeHistory = true)
Делает запрос из объекта Request напрямую.
Параметры
| Request | $request | Экземпляр Request |
| bool | $changeHistory | Обновить историю или нет (используется только внутри для back(), forward() и reload()) |
Возвращаемое значение
| Crawler |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/BrowserKit/Client.html