404

[ Avaa Bypassed ]




Upload:

Command:

botdev@18.117.87.50: ~ $
<?php

declare(strict_types=1);

namespace GuzzleHttp\Psr7;

use InvalidArgumentException;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\StreamInterface;
use Psr\Http\Message\UriInterface;

/**
 * PSR-7 request implementation.
 */
class Request implements RequestInterface
{
    use MessageTrait;

    /** @var string */
    private $method;

    /** @var string|null */
    private $requestTarget;

    /** @var UriInterface */
    private $uri;

    /**
     * @param string                               $method  HTTP method
     * @param string|UriInterface                  $uri     URI
     * @param array<string, string|string[]>       $headers Request headers
     * @param string|resource|StreamInterface|null $body    Request body
     * @param string                               $version Protocol version
     */
    public function __construct(
        string $method,
        $uri,
        array $headers = [],
        $body = null,
        string $version = '1.1'
    ) {
        $this->assertMethod($method);
        if (!($uri instanceof UriInterface)) {
            $uri = new Uri($uri);
        }

        $this->method = strtoupper($method);
        $this->uri = $uri;
        $this->setHeaders($headers);
        $this->protocol = $version;

        if (!isset($this->headerNames['host'])) {
            $this->updateHostFromUri();
        }

        if ($body !== '' && $body !== null) {
            $this->stream = Utils::streamFor($body);
        }
    }

    public function getRequestTarget(): string
    {
        if ($this->requestTarget !== null) {
            return $this->requestTarget;
        }

        $target = $this->uri->getPath();
        if ($target === '') {
            $target = '/';
        }
        if ($this->uri->getQuery() != '') {
            $target .= '?' . $this->uri->getQuery();
        }

        return $target;
    }

    public function withRequestTarget($requestTarget): RequestInterface
    {
        if (preg_match('#\s#', $requestTarget)) {
            throw new InvalidArgumentException(
                'Invalid request target provided; cannot contain whitespace'
            );
        }

        $new = clone $this;
        $new->requestTarget = $requestTarget;
        return $new;
    }

    public function getMethod(): string
    {
        return $this->method;
    }

    public function withMethod($method): RequestInterface
    {
        $this->assertMethod($method);
        $new = clone $this;
        $new->method = strtoupper($method);
        return $new;
    }

    public function getUri(): UriInterface
    {
        return $this->uri;
    }

    public function withUri(UriInterface $uri, $preserveHost = false): RequestInterface
    {
        if ($uri === $this->uri) {
            return $this;
        }

        $new = clone $this;
        $new->uri = $uri;

        if (!$preserveHost || !isset($this->headerNames['host'])) {
            $new->updateHostFromUri();
        }

        return $new;
    }

    private function updateHostFromUri(): void
    {
        $host = $this->uri->getHost();

        if ($host == '') {
            return;
        }

        if (($port = $this->uri->getPort()) !== null) {
            $host .= ':' . $port;
        }

        if (isset($this->headerNames['host'])) {
            $header = $this->headerNames['host'];
        } else {
            $header = 'Host';
            $this->headerNames['host'] = 'Host';
        }
        // Ensure Host is the first header.
        // See: http://tools.ietf.org/html/rfc7230#section-5.4
        $this->headers = [$header => [$host]] + $this->headers;
    }

    /**
     * @param mixed $method
     */
    private function assertMethod($method): void
    {
        if (!is_string($method) || $method === '') {
            throw new InvalidArgumentException('Method must be a non-empty string.');
        }
    }
}

Filemanager

Name Type Size Permission Actions
Exception Folder 2755
AppendStream.php File 5.84 KB 0755
BufferStream.php File 3.17 KB 0755
CachingStream.php File 4.42 KB 0755
DroppingStream.php File 1.12 KB 0755
FnStream.php File 4.38 KB 0755
Header.php File 2.04 KB 0755
HttpFactory.php File 3.02 KB 0755
InflateStream.php File 1.3 KB 0755
LazyOpenStream.php File 899 B 0755
LimitStream.php File 4.14 KB 0755
Message.php File 8.01 KB 0755
MessageTrait.php File 6.46 KB 0755
MimeType.php File 4.2 KB 0755
MultipartStream.php File 4.67 KB 0755
NoSeekStream.php File 470 B 0755
PumpStream.php File 4.5 KB 0755
Query.php File 3.55 KB 0755
Request.php File 3.81 KB 0755
Response.php File 4.79 KB 0755
Rfc7230.php File 665 B 0755
ServerRequest.php File 9.36 KB 0755
Stream.php File 7.12 KB 0755
StreamDecoratorTrait.php File 3.28 KB 0755
StreamWrapper.php File 4.01 KB 0755
UploadedFile.php File 4.75 KB 0755
Uri.php File 21.33 KB 0755
UriNormalizer.php File 8.22 KB 0755
UriResolver.php File 8.36 KB 0755
Utils.php File 13.91 KB 0755