You are here

public function Request::withUri in Auth0 Single Sign On 8.2

Returns an instance with the provided URI.

This method MUST update the Host header of the returned request by default if the URI contains a host component. If the URI does not contain a host component, any pre-existing Host header MUST be carried over to the returned request.

You can opt-in to preserving the original state of the Host header by setting `$preserveHost` to `true`. When `$preserveHost` is set to `true`, this method interacts with the Host header in the following ways:

  • If the Host header is missing or empty, and the new URI contains a host component, this method MUST update the Host header in the returned request.
  • If the Host header is missing or empty, and the new URI does not contain a host component, this method MUST NOT update the Host header in the returned request.
  • If a Host header is present and non-empty, this method MUST NOT update the Host header in the returned request.

This method MUST be implemented in such a way as to retain the immutability of the message, and MUST return an instance that has the new UriInterface instance.

@link http://tools.ietf.org/html/rfc3986#section-4.3

Parameters

UriInterface $uri New request URI to use.:

bool $preserveHost Preserve the original state of the Host header.:

Return value

static

Overrides RequestInterface::withUri

File

vendor/guzzlehttp/psr7/src/Request.php, line 106

Class

Request
PSR-7 request implementation.

Namespace

GuzzleHttp\Psr7

Code

public function withUri(UriInterface $uri, $preserveHost = false) {
  if ($uri === $this->uri) {
    return $this;
  }
  $new = clone $this;
  $new->uri = $uri;
  if (!$preserveHost || !isset($this->headerNames['host'])) {
    $new
      ->updateHostFromUri();
  }
  return $new;
}