52 $session =
null, $protocol =
'http'
54 $this->requestTime = microtime(
true );
56 if ( is_array(
$data ) ) {
59 throw new MWException(
"FauxRequest() got bogus data" );
62 if ( $session instanceof
MediaWiki\Session\Session ) {
63 $this->sessionId = $session->getSessionId();
64 } elseif ( is_array( $session ) ) {
65 $mwsession = SessionManager::singleton()->getEmptySession( $this );
66 $this->sessionId = $mwsession->getSessionId();
67 foreach ( $session as $key => $value ) {
68 $mwsession->set( $key, $value );
70 } elseif ( $session !==
null ) {
71 throw new MWException(
"FauxRequest() got bogus session" );
88 public function getText( $name, $default =
'' ) {
89 # Override; don't recode since we're using internal data
90 return (
string)$this->
getVal( $name, $default );
105 return $this->
wasPosted ?
'POST' :
'GET';
112 return $this->wasPosted;
115 public function getCookie( $key, $prefix =
null, $default =
null ) {
116 if ( $prefix ===
null ) {
120 $name = $prefix . $key;
121 return $this->cookies[$name] ?? $default;
130 public function setCookie( $key, $value, $prefix =
null ) {
131 $this->
setCookies( [ $key => $value ], $prefix );
140 if ( $prefix ===
null ) {
144 foreach (
$cookies as $key => $value ) {
145 $name = $prefix . $key;
146 $this->cookies[$name] = $value;
155 $this->requestUrl = $url;
164 if ( $this->requestUrl ===
null ) {
167 return $this->requestUrl;
171 return $this->protocol;
187 foreach (
$headers as $name => $val ) {
188 $name = strtoupper( $name );
189 $this->headers[$name] = $val;
197 if ( $this->sessionId !==
null ) {
198 return iterator_to_array( $this->
getSession() );
$wgCookiePrefix
Cookies generated by MediaWiki have names starting with this prefix.
WebRequest clone which takes values from a provided array.
setCookie( $key, $value, $prefix=null)
getText( $name, $default='')
getRawPostString()
FauxRequests shouldn't depend on raw request data (but that could be implemented here)
initHeaders()
Initialise the header list.
getRawInput()
FauxRequests shouldn't depend on raw request data (but that could be implemented here)
setCookies( $cookies, $prefix=null)
getProtocol()
Get the current URL protocol (http or https)
getMethod()
Get the HTTP method used for this request.
__construct( $data=[], $wasPosted=false, $session=null, $protocol='http')
Stable to call.
getCookie( $key, $prefix=null, $default=null)
Get a cookie from the $_COOKIE jar.
getRawQueryString()
FauxRequests shouldn't depend on raw request data (but that could be implemented here)
The WebRequest class encapsulates getting at data passed in the URL or via a POSTed form stripping il...
array $headers
Lazy-initialized request headers indexed by upper-case header name.
string $protocol
Cached URL protocol.
getSession()
Return the session for this request.
getVal( $name, $default=null)
Fetch a scalar from the input or return $default if it's not set.
array $data
The parameters from $_GET, $_POST and the path router.