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: ArrayAccess
Countable
OCP\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\offsetExists
Returns: 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: \LogicException
Returns: 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: \Exception
Returns: string Path info
-
public
OC\AppFramework\Http\Request::
getPathInfo
()¶ - Get PathInfo from request
Source: lib/private/AppFramework/Http/Request.php#809 Throws: \Exception
Returns: 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