return microtime( true ) - $this->requestTime;
}
+ /**
+ * Get the unique request ID.
+ * This is either the value of the UNIQUE_ID envvar (if present) or a
+ * randomly-generated 24-character string.
+ *
+ * @return string
+ * @since 1.27
+ */
+ public static function getRequestId() {
+ static $reqId;
+
+ if ( !$reqId ) {
+ $reqId = isset( $_SERVER['UNIQUE_ID'] )
+ ? $_SERVER['UNIQUE_ID'] : wfRandomString( 24 );
+ }
+
+ return $reqId;
+ }
+
/**
* Get the current URL protocol (http or https)
* @return string
$this->sessionId = $sessionId;
}
+ /**
+ * Get the session id for this request, if any
+ * @since 1.27
+ * @private For use by MediaWiki\\Session classes only
+ * @return MediaWiki\\Session\\SessionId|null
+ */
+ public function getSessionId() {
+ return $this->sessionId;
+ }
+
/**
* Returns true if the request has a persistent session.
* This does not necessarily mean that the user is logged in!
}
/**
- * Return the path and query string portion of the request URI.
+ * Return the path and query string portion of the main request URI.
* This will be suitable for use as a relative link in HTML output.
*
* @throws MWException
* @return string
*/
- public function getRequestURL() {
+ public static function getGlobalRequestURL() {
if ( isset( $_SERVER['REQUEST_URI'] ) && strlen( $_SERVER['REQUEST_URI'] ) ) {
$base = $_SERVER['REQUEST_URI'];
} elseif ( isset( $_SERVER['HTTP_X_ORIGINAL_URL'] )
}
}
+ /**
+ * Return the path and query string portion of the request URI.
+ * This will be suitable for use as a relative link in HTML output.
+ *
+ * @throws MWException
+ * @return string
+ */
+ public function getRequestURL() {
+ return self::getGlobalRequestURL();
+ }
+
/**
* Return the request URI with the canonical service and hostname, path,
* and query string. This will be suitable for use as an absolute link