变更
This commit is contained in:
@@ -387,23 +387,4 @@ class Uri implements UriInterface
|
|||||||
return $this->scheme . '://x.x.x.x:' . $this->port . '/' . $this->path . '?' . $this->queryString;
|
return $this->scheme . '://x.x.x.x:' . $this->port . '/' . $this->path . '?' . $this->queryString;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param \Swoole\Http\Request $request
|
|
||||||
* @return UriInterface
|
|
||||||
*/
|
|
||||||
public static function parse(\Swoole\Http\Request $request): UriInterface
|
|
||||||
{
|
|
||||||
$uri = new static();
|
|
||||||
$uri->queryString = $request->server['query_string'] ?? '';
|
|
||||||
$uri->path = $request->server['path_info'];
|
|
||||||
$uri->port = $request->server['server_port'];
|
|
||||||
if (isset($request->server['https']) && $request->server['https'] !== 'off') {
|
|
||||||
$uri->scheme = 'https';
|
|
||||||
} else {
|
|
||||||
$uri->scheme = 'http';
|
|
||||||
}
|
|
||||||
return $uri;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+25
-1
@@ -15,6 +15,7 @@ use Psr\Container\ContainerExceptionInterface;
|
|||||||
use Psr\Container\NotFoundExceptionInterface;
|
use Psr\Container\NotFoundExceptionInterface;
|
||||||
use Psr\Http\Message\RequestInterface;
|
use Psr\Http\Message\RequestInterface;
|
||||||
use Psr\Http\Message\ResponseInterface;
|
use Psr\Http\Message\ResponseInterface;
|
||||||
|
use Psr\Http\Message\UriInterface;
|
||||||
use Swoole\Http\Request;
|
use Swoole\Http\Request;
|
||||||
use Kiri\Di\Inject\Service;
|
use Kiri\Di\Inject\Service;
|
||||||
use Swoole\Http\Response;
|
use Swoole\Http\Response;
|
||||||
@@ -120,7 +121,7 @@ class Server implements OnRequestInterface
|
|||||||
$PsrResponse->withContentType($this->response->contentType);
|
$PsrResponse->withContentType($this->response->contentType);
|
||||||
|
|
||||||
$serverRequest = (new ConstrictRequest())->withDataHeaders($request->getData())
|
$serverRequest = (new ConstrictRequest())->withDataHeaders($request->getData())
|
||||||
->withUri(Uri::parse($request))
|
->withUri(static::parse($request))
|
||||||
->withProtocolVersion($request->server['server_protocol'])
|
->withProtocolVersion($request->server['server_protocol'])
|
||||||
->withCookieParams($request->cookie ?? [])
|
->withCookieParams($request->cookie ?? [])
|
||||||
->withQueryParams($request->get ?? [])
|
->withQueryParams($request->get ?? [])
|
||||||
@@ -133,4 +134,27 @@ class Server implements OnRequestInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
* @return UriInterface
|
||||||
|
*/
|
||||||
|
public static function parse(Request $request): UriInterface
|
||||||
|
{
|
||||||
|
$uri = new Uri();
|
||||||
|
$uri->withQuery($request->server['query_string'] ?? '')
|
||||||
|
->withPath($request->server['path_info'])
|
||||||
|
->withPort($request->server['server_port']);
|
||||||
|
if (isset($request->server['https']) && $request->server['https'] !== 'off') {
|
||||||
|
$uri->withScheme('https');
|
||||||
|
} else {
|
||||||
|
$uri->withScheme('http');
|
||||||
|
}
|
||||||
|
return $uri;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user