mirror of
https://github.com/bitinflow/expose.git
synced 2026-03-13 21:45:55 +00:00
25 lines
892 B
PHP
25 lines
892 B
PHP
<?php
|
|
|
|
namespace App\Server\Messages\RequestModifiers;
|
|
|
|
use App\Server\Connections\Connection;
|
|
use App\Server\Connections\ConnectionManager;
|
|
use GuzzleHttp\Psr7\Request;
|
|
use Psr\Http\Message\RequestInterface;
|
|
use function GuzzleHttp\Psr7\modify_request;
|
|
|
|
class ModifyHeaders implements RequestModifier
|
|
{
|
|
public function modify(RequestInterface $request, string $requestId, Connection $clientConnection, ConnectionManager $connectionManager): RequestInterface
|
|
{
|
|
return modify_request($request, [
|
|
'set_headers' => [
|
|
'Host' => $clientConnection->host,
|
|
'X-Expose-Request-ID' => $requestId,
|
|
'X-Exposed-By' => config('app.name') . ' '. config('app.version'),
|
|
'X-Original-Host' => "{$clientConnection->subdomain}.{$connectionManager->host()}:{$connectionManager->port()}",
|
|
]
|
|
]);
|
|
}
|
|
}
|