Request¶
-
class
OC\AppFramework\Http\Request¶ - Class for accessing variables in the request.This class provides an immutable object with request variables.
Source: lib/private/AppFramework/Http/Request.php#66 Implements: ArrayAccessCountableOCP\IRequest
Constants¶
-
USER_AGENT_IE = /(MSIE)|(Trident)/ Source: lib/private/AppFramework/Http/Request.php#67
-
USER_AGENT_MS_EDGE = /^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/[0-9.]+ (Mobile Safari|Safari)\/[0-9.]+ Edge\/[0-9.]+$/ Source: lib/private/AppFramework/Http/Request.php#69
-
USER_AGENT_FIREFOX = /^Mozilla\/5\.0 \([^)]+\) Gecko\/[0-9.]+ Firefox\/[0-9.]+$/ Source: lib/private/AppFramework/Http/Request.php#71
-
USER_AGENT_CHROME = /^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\)( Ubuntu Chromium\/[0-9.]+|) Chrome\/[0-9.]+ (Mobile Safari|Safari)\/[0-9.]+( (Vivaldi|Brave|OPR)\/[0-9.]+|)$/ Source: lib/private/AppFramework/Http/Request.php#73
-
USER_AGENT_SAFARI = /^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Version\/[0-9.]+ Safari\/[0-9.A-Z]+$/ Source: lib/private/AppFramework/Http/Request.php#75
-
USER_AGENT_ANDROID_MOBILE_CHROME = #Android.*Chrome/[.0-9]*# Source: lib/private/AppFramework/Http/Request.php#77
-
USER_AGENT_FREEBOX = #^Mozilla/5\.0$# Source: lib/private/AppFramework/Http/Request.php#78
-
REGEX_LOCALHOST = /^(127\.0\.0\.1|localhost|\[::1\])$/ Source: lib/private/AppFramework/Http/Request.php#79
-
USER_AGENT_OWNCLOUD_IOS = /^Mozilla\/5\.0 \(iOS\) (ownCloud|Nextcloud)\-iOS.*$/ Source: lib/private/AppFramework/Http/Request.php#84 Deprecated: use \OCP\IRequest::USER_AGENT_CLIENT_IOS instead
-
USER_AGENT_OWNCLOUD_ANDROID = /^Mozilla\/5\.0 \(Android\) ownCloud\-android.*$/ Source: lib/private/AppFramework/Http/Request.php#88 Deprecated: use \OCP\IRequest::USER_AGENT_CLIENT_ANDROID instead
-
USER_AGENT_OWNCLOUD_DESKTOP = /^Mozilla\/5\.0 \([A-Za-z ]+\) (mirall|csyncoC)\/.*$/ Source: lib/private/AppFramework/Http/Request.php#92 Deprecated: use \OCP\IRequest::USER_AGENT_CLIENT_DESKTOP instead
Properties¶
-
protected static property
OC\AppFramework\Http\Request::$inputStream¶ Source: lib/private/AppFramework/Http/Request.php#94
-
protected static property
OC\AppFramework\Http\Request::$content¶ Source: lib/private/AppFramework/Http/Request.php#95
-
protected static property
OC\AppFramework\Http\Request::$items¶ Source: lib/private/AppFramework/Http/Request.php#96
-
protected static property
OC\AppFramework\Http\Request::$allowedKeys¶ Source: lib/private/AppFramework/Http/Request.php#97
-
protected static property
OC\AppFramework\Http\Request::$secureRandom¶ Source: lib/private/AppFramework/Http/Request.php#110 Type: \OCP\Security\ISecureRandom
-
protected static property
OC\AppFramework\Http\Request::$config¶ Source: lib/private/AppFramework/Http/Request.php#112 Type: \OCP\IConfig
-
protected static property
OC\AppFramework\Http\Request::$requestId¶ Source: lib/private/AppFramework/Http/Request.php#114 Type: string
-
protected static property
OC\AppFramework\Http\Request::$crypto¶ Source: lib/private/AppFramework/Http/Request.php#116 Type: \OCP\Security\ICrypto
-
protected static property
OC\AppFramework\Http\Request::$csrfTokenManager¶ Source: lib/private/AppFramework/Http/Request.php#118 Type: \OC\Security\CSRF\CsrfTokenManager| null
-
protected static property
OC\AppFramework\Http\Request::$contentDecoded¶ Source: lib/private/AppFramework/Http/Request.php#121 Type: bool
Methods¶
-
public
OC\AppFramework\Http\Request::__construct($vars, $secureRandom, $config, $csrfTokenManager=null, $stream=php://input)¶ Source: Parameters: - $vars (array) An associative array with the following optional values:
- array ‘urlParams’ the parameters which were matched from the URL
- array ‘get’ the $_GET array
- array|string ‘post’ the $_POST array or JSON string
- array ‘files’ the $_FILES array
- array ‘server’ the $_SERVER array
- array ‘env’ the $_ENV array
- array ‘cookies’ the $_COOKIE array
- string ‘method’ the request method (GET, POST etc)
- string|false ‘requesttoken’ the requesttoken or false when not available
- $secureRandom (
OCP\Security\ISecureRandom) - $config (
OCP\IConfig) - $csrfTokenManager (
OC\Security\CSRF\CsrfTokenManager| null) - $stream (string)
See: https://www.php.net/manual/en/reserved.variables.php
-
public
OC\AppFramework\Http\Request::setUrlParameters($parameters)¶ Source: Parameters: - $parameters (array)
-
public
OC\AppFramework\Http\Request::count()¶ - Countable method
Source: lib/private/AppFramework/Http/Request.php#183 Returns: int
-
public
OC\AppFramework\Http\Request::offsetExists($offset)¶ - ArrayAccess methodsGives access to the combined GET, POST and urlParams arraysExamples:$var = $request[‘myvar’];orif(!isset($request[‘myvar’]) {// Do something}$request[‘myvar’] = ‘something’; // This throws an exception.
Source: Parameters: - $offset (string) The key to lookup
Returns: bool
-
public
OC\AppFramework\Http\Request::offsetGet($offset)¶ Source: Parameters: - $offset (string)
See: \OC\AppFramework\Http\offsetExistsReturns: mixed
-
public
OC\AppFramework\Http\Request::offsetSet($offset, $value)¶ Source: Parameters: - $offset (string)
- $value (mixed)
See: \OC\AppFramework\Http\offsetExists
-
public
OC\AppFramework\Http\Request::offsetUnset($offset)¶ Source: Parameters: - $offset (string)
See: \OC\AppFramework\Http\offsetExists
-
public
OC\AppFramework\Http\Request::__set($name, $value)¶ - Magic property accessors
Source: Parameters: - $name (string)
- $value (mixed)
-
public
OC\AppFramework\Http\Request::__get($name)¶ - Access request variables by method and name.Examples:$request->post[‘myvar’]; // Only look for POST variables$request->myvar; or $request->{‘myvar’}; or $request->{$myvar}Looks in the combined GET, POST and urlParams array.If you access e.g. ->post but the current HTTP request methodis GET a \LogicException will be thrown.
Source: Parameters: - $name (string) The key to look for.
Throws: \LogicExceptionReturns: mixed | null
-
public
OC\AppFramework\Http\Request::__isset($name)¶ Source: Parameters: - $name (string)
Returns: bool
-
public
OC\AppFramework\Http\Request::__unset($id)¶ Source: Parameters: - $id (string)
-
public
OC\AppFramework\Http\Request::getHeader($name)¶ - Returns the value for a specific http header.This method returns an empty string if the header did not exist.
Source: Parameters: - $name (string)
Returns: string
-
public
OC\AppFramework\Http\Request::getParam($key, $default=null)¶ - Lets you access post and get parameters by the indexIn case of json requests the encoded json body is accessed
Source: Parameters: - $key (string) the key which you want to access in the URL Parameter
placeholder, $_POST or $_GET array. The priority how they’re returned is the following: 1. URL parameters 2. POST parameters 3. GET parameters * $default (mixed) If the key is not found, this value will be returned
Returns: mixed the content of the array
-
public
OC\AppFramework\Http\Request::getParams()¶ - Returns all params that were received, be it from the request(as GET or POST) or throuh the URL by the route
Source: lib/private/AppFramework/Http/Request.php#363 Returns: array the array with all parameters
-
public
OC\AppFramework\Http\Request::getMethod()¶ - Returns the method of the request
Source: lib/private/AppFramework/Http/Request.php#371 Returns: string the method of the request (POST, GET, etc)
-
public
OC\AppFramework\Http\Request::getUploadedFile($key)¶ - Shortcut for accessing an uploaded file through the $_FILES array
Source: Parameters: - $key (string) the key that will be taken from the $_FILES array
Returns: array the file in the $_FILES element
-
public
OC\AppFramework\Http\Request::getEnv($key)¶ - Shortcut for getting env variables
Source: Parameters: - $key (string) the key that will be taken from the $_ENV array
Returns: array the value in the $_ENV element
-
public
OC\AppFramework\Http\Request::getCookie($key)¶ - Shortcut for getting cookie variables
Source: Parameters: - $key (string) the key that will be taken from the $_COOKIE array
Returns: string the value in the $_COOKIE element
-
protected
OC\AppFramework\Http\Request::getContent()¶ - Returns the request body content.If the HTTP request method is PUT and the bodynot application/x-www-form-urlencoded or application/json a streamresource is returned, otherwise an array.
Source: lib/private/AppFramework/Http/Request.php#413 Returns: array | string | resource The request body content or a resource to read the body stream. Throws: \LogicException
-
protected
OC\AppFramework\Http\Request::decodeContent()¶ - Attempt to decode the content and populate parameters
Source: lib/private/AppFramework/Http/Request.php#438
-
public
OC\AppFramework\Http\Request::passesCSRFCheck()¶ - Checks if the CSRF check was correct
Source: lib/private/AppFramework/Http/Request.php#476 Returns: bool true if CSRF check passed
-
public
OC\AppFramework\Http\Request::getCookieParams()¶ - Wrapper around session_get_cookie_params
Source: lib/private/AppFramework/Http/Request.php#521 Returns: array
-
protected
OC\AppFramework\Http\Request::getProtectedCookieName($name)¶ - Appends the __Host- prefix to the cookie if applicable
Source: Parameters: - $name (string)
Returns: string
-
public
OC\AppFramework\Http\Request::passesStrictCookieCheck()¶ - Checks if the strict cookie has been sent with the request if the requestis including any cookies.
Source: lib/private/AppFramework/Http/Request.php#548 Returns: bool Since: 9.1.0
-
public
OC\AppFramework\Http\Request::passesLaxCookieCheck()¶ - Checks if the lax cookie has been sent with the request if the requestis including any cookies.
Source: lib/private/AppFramework/Http/Request.php#568 Returns: bool Since: 9.1.0
-
public
OC\AppFramework\Http\Request::getId()¶ - Returns an ID for the request, value is not guaranteed to be unique and is mostly meant for loggingIf `mod_unique_id` is installed this value will be taken.
Source: lib/private/AppFramework/Http/Request.php#586 Returns: string
-
protected
OC\AppFramework\Http\Request::matchesTrustedProxy($trustedProxy, $remoteAddress)¶ - Checks if given $remoteAddress matches given $trustedProxy.If $trustedProxy is an IPv4 IP range given in CIDR notation, true will be returned if$remoteAddress is an IPv4 address within that IP range.Otherwise $remoteAddress will be compared to $trustedProxy literally and the resultwill be returned.
Source: lib/private/AppFramework/Http/Request.php#607 Returns: bool true if $remoteAddress matches $trustedProxy, false otherwise
-
protected
OC\AppFramework\Http\Request::isTrustedProxy($trustedProxies, $remoteAddress)¶ - Checks if given $remoteAddress matches any entry in the given array $trustedProxies.For details regarding what “match” means, refer to `matchesTrustedProxy`.
Source: lib/private/AppFramework/Http/Request.php#627 Returns: bool true if $remoteAddress matches any entry in $trustedProxies, false otherwise
-
public
OC\AppFramework\Http\Request::getRemoteAddress()¶ - Returns the remote address, if the connection came from a trusted proxyand `forwarded_for_headers` has been configured then the IP addressspecified in this header will be returned instead.Do always use this instead of $_SERVER[‘REMOTE_ADDR’]
Source: lib/private/AppFramework/Http/Request.php#644 Returns: string IP address
-
public
OC\AppFramework\Http\Request::getServerProtocol()¶ - Returns the server protocol. It respects one or more reverse proxies serversand load balancers
Source: lib/private/AppFramework/Http/Request.php#692 Returns: string Server protocol (http or https)
-
public
OC\AppFramework\Http\Request::getHttpProtocol()¶ - Returns the used HTTP protocol.
Source: lib/private/AppFramework/Http/Request.php#726 Returns: string HTTP protocol. HTTP/2, HTTP/1.1 or HTTP/1.0.
-
public
OC\AppFramework\Http\Request::getRequestUri()¶ - Returns the request uri, even if the website uses one or morereverse proxies
Source: lib/private/AppFramework/Http/Request.php#751 Returns: string
-
public
OC\AppFramework\Http\Request::getRawPathInfo()¶ - Get raw PathInfo from request (not urldecoded)
Source: lib/private/AppFramework/Http/Request.php#764 Throws: \ExceptionReturns: string Path info
-
public
OC\AppFramework\Http\Request::getPathInfo()¶ - Get PathInfo from request
Source: lib/private/AppFramework/Http/Request.php#809 Throws: \ExceptionReturns: string | bool Path info or false when not found
-
public
OC\AppFramework\Http\Request::getScriptName()¶ - Returns the script name, even if the website uses one or morereverse proxies
Source: lib/private/AppFramework/Http/Request.php#829 Returns: string the script name
-
public
OC\AppFramework\Http\Request::isUserAgent($agent)¶ - Checks whether the user agent matches a given regex
Source: Parameters: - $agent (array) array of agent names
Returns: bool true if at least one of the given agent matches, false otherwise
-
public
OC\AppFramework\Http\Request::getInsecureServerHost()¶ - Returns the unverified server host from the headers without checkingwhether it is a trusted domain
Source: lib/private/AppFramework/Http/Request.php#863 Returns: string Server host
-
public
OC\AppFramework\Http\Request::getServerHost()¶ - Returns the server host from the headers, or the first configuredtrusted domain if the host isn’t in the trusted list
Source: lib/private/AppFramework/Http/Request.php#893 Returns: string Server host