On this page
Client
abstract class Client
Client simulates a browser.
To make the actual request, you need to implement the doRequest() method.
If you want to be able to run requests in their own process (insulated flag), you need to also implement the getScript() method.
Properties
protected | $history | ||
protected | $cookieJar | ||
protected | $server | ||
protected | $internalRequest | ||
protected | $request | ||
protected | $internalResponse | ||
protected | $response | ||
protected | $crawler | ||
protected | $insulated | ||
protected | $redirect | ||
protected | $followRedirects |
Methods
__construct(array $server = array(), History $history = null, CookieJar $cookieJar = null) | ||
followRedirects(bool $followRedirect = true) Sets whether to automatically follow redirects or not. |
||
bool | isFollowingRedirects() Returns whether client automatically follows redirects or not. |
|
setMaxRedirects(int $maxRedirects) Sets the maximum number of redirects that crawler can follow. |
||
int | getMaxRedirects() Returns the maximum number of redirects that crawler can follow. |
|
insulate(bool $insulated = true) Sets the insulated flag. |
||
setServerParameters(array $server) Sets server parameters. |
||
setServerParameter(string $key, string $value) Sets single server parameter. |
||
string | getServerParameter(string $key, string $default = '') Gets single server parameter for specified key. |
|
Crawler | xmlHttpRequest(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true) | |
History | getHistory() Returns the History instance. |
|
CookieJar | getCookieJar() Returns the CookieJar instance. |
|
Crawler | getCrawler() Returns the current Crawler instance. |
|
Response | getInternalResponse() Returns the current BrowserKit Response instance. |
|
object | getResponse() Returns the current origin response instance. |
|
Request | getInternalRequest() Returns the current BrowserKit Request instance. |
|
object | getRequest() Returns the current origin Request instance. |
|
Crawler | click(Link $link) Clicks on a given link. |
|
Crawler | submit(Form $form, array $values = array()) Submits a form. |
|
Crawler | request(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true) Calls a URI. |
|
object | doRequestInProcess(object $request) Makes a request in another process. |
|
object | doRequest(object $request) Makes a request. |
|
getScript(object $request) Returns the script to execute when the request must be insulated. |
||
object | filterRequest(Request $request) Filters the BrowserKit request to the origin one. |
|
Response | filterResponse(object $response) Filters the origin response to the BrowserKit one. |
|
Crawler|null | createCrawlerFromContent(string $uri, string $content, string $type) Creates a crawler. |
|
Crawler | back() Goes back in the browser history. |
|
Crawler | forward() Goes forward in the browser history. |
|
Crawler | reload() Reloads the current browser. |
|
Crawler | followRedirect() Follow redirects? |
|
restart() Restarts the client. |
||
string | getAbsoluteUri(string $uri) Takes a URI and converts it to absolute if it is not already absolute. |
|
Crawler | requestFromRequest(Request $request, bool $changeHistory = true) Makes a request from a Request object directly. |
Details
__construct(array $server = array(), History $history = null, CookieJar $cookieJar = null)
Parameters
array | $server | The server parameters (equivalent of $_SERVER) |
History | $history | A History instance to store the browser history |
CookieJar | $cookieJar | A CookieJar instance to store the cookies |
followRedirects(bool $followRedirect = true)
Sets whether to automatically follow redirects or not.
Parameters
bool | $followRedirect | Whether to follow redirects |
bool isFollowingRedirects()
Returns whether client automatically follows redirects or not.
Return Value
bool |
setMaxRedirects(int $maxRedirects)
Sets the maximum number of redirects that crawler can follow.
Parameters
int | $maxRedirects |
int getMaxRedirects()
Returns the maximum number of redirects that crawler can follow.
Return Value
int |
insulate(bool $insulated = true)
Sets the insulated flag.
Parameters
bool | $insulated | Whether to insulate the requests or not |
Exceptions
RuntimeException | When Symfony Process Component is not installed |
setServerParameters(array $server)
Sets server parameters.
Parameters
array | $server | An array of server parameters |
setServerParameter(string $key, string $value)
Sets single server parameter.
Parameters
string | $key | A key of the parameter |
string | $value | A value of the parameter |
string getServerParameter(string $key, string $default = '')
Gets single server parameter for specified key.
Parameters
string | $key | A key of the parameter to get |
string | $default | A default value when key is undefined |
Return Value
string | A value of the parameter |
Crawler xmlHttpRequest(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true)
Parameters
string | $method | |
string | $uri | |
array | $parameters | |
array | $files | |
array | $server | |
string | $content | |
bool | $changeHistory |
Return Value
History getHistory()
Returns the History instance.
Return Value
History | A History instance |
CookieJar getCookieJar()
Returns the CookieJar instance.
Return Value
CookieJar | A CookieJar instance |
Crawler getCrawler()
Returns the current Crawler instance.
Return Value
Crawler | A Crawler instance |
Response getInternalResponse()
Returns the current BrowserKit Response instance.
Return Value
Response | A BrowserKit Response instance |
object getResponse()
Returns the current origin response instance.
The origin response is the response instance that is returned by the code that handles requests.
Return Value
object | A response instance |
See also
doRequest() |
Request getInternalRequest()
Returns the current BrowserKit Request instance.
Return Value
Request | A BrowserKit Request instance |
object getRequest()
Returns the current origin Request instance.
The origin request is the request instance that is sent to the code that handles requests.
Return Value
object | A Request instance |
See also
doRequest() |
Crawler click(Link $link)
Clicks on a given link.
Parameters
Link | $link |
Return Value
Crawler submit(Form $form, array $values = array())
Submits a form.
Parameters
Form | $form | |
array | $values |
Return Value
Crawler request(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true)
Calls a URI.
Parameters
string | $method | The request method |
string | $uri | The URI to fetch |
array | $parameters | The Request parameters |
array | $files | The files |
array | $server | The server parameters (HTTP headers are referenced with a HTTP_ prefix as PHP does) |
string | $content | The raw body data |
bool | $changeHistory | Whether to update the history or not (only used internally for back(), forward(), and reload()) |
Return Value
protected object doRequestInProcess(object $request)
Makes a request in another process.
Parameters
object | $request | An origin request instance |
Return Value
object | An origin response instance |
Exceptions
RuntimeException | When processing returns exit code |
abstract protected object doRequest(object $request)
Makes a request.
Parameters
object | $request | An origin request instance |
Return Value
object | An origin response instance |
protected getScript(object $request)
Returns the script to execute when the request must be insulated.
Parameters
object | $request | An origin request instance |
Exceptions
LogicException | When this abstract class is not implemented |
protected object filterRequest(Request $request)
Filters the BrowserKit request to the origin one.
Parameters
Request | $request | The BrowserKit Request to filter |
Return Value
object | An origin request instance |
protected Response filterResponse(object $response)
Filters the origin response to the BrowserKit one.
Parameters
object | $response | The origin response to filter |
Return Value
Response | An BrowserKit Response instance |
protected Crawler|null createCrawlerFromContent(string $uri, string $content, string $type)
Creates a crawler.
This method returns null if the DomCrawler component is not available.
Parameters
string | $uri | A URI |
string | $content | Content for the crawler to use |
string | $type | Content type |
Return Value
Crawler|null |
Crawler back()
Goes back in the browser history.
Return Value
Crawler forward()
Goes forward in the browser history.
Return Value
Crawler reload()
Reloads the current browser.
Return Value
Crawler followRedirect()
Follow redirects?
Return Value
Exceptions
LogicException | If request was not a redirect |
restart()
Restarts the client.
It flushes history and all cookies.
protected string getAbsoluteUri(string $uri)
Takes a URI and converts it to absolute if it is not already absolute.
Parameters
string | $uri | A URI |
Return Value
string | An absolute URI |
protected Crawler requestFromRequest(Request $request, bool $changeHistory = true)
Makes a request from a Request object directly.
Parameters
Request | $request | A Request instance |
bool | $changeHistory | Whether to update the history or not (only used internally for back(), forward(), and reload()) |
Return Value
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/BrowserKit/Client.html