Class AssetMiddleware
Handles serving plugin assets in development mode.
This should not be used in production environments as it has sub-optimal performance when compared to serving files with a real webserver.
Property Summary
-
$cacheTime protected
string
The amount of time to cache the asset.
-
$typeMap protected
array
A extension to content type mapping for plain text types.
Method Summary
-
__construct() public
Constructor.
-
__invoke() public
Serve assets if the path matches one.
-
_getAssetFile() protected
Builds asset file path based off url
-
deliverAsset() protected
Sends an asset file to the client
-
getType() protected
Return the type from a File object
-
isNotModified() protected
Check the not modified header.
Method Detail
__construct() ¶ public
__construct(array $options = [])
Constructor.
Parameters
-
array
$options optional The options to use
__invoke() ¶ public
__invoke(Psr\Http\Message\ServerRequestInterface $request, Psr\Http\Message\ResponseInterface $response, callable $next): Psr\Http\Message\ResponseInterface
Serve assets if the path matches one.
Parameters
-
Psr\Http\Message\ServerRequestInterface
$request The request.
-
Psr\Http\Message\ResponseInterface
$response The response.
-
callable
$next Callback to invoke the next middleware.
Returns
Psr\Http\Message\ResponseInterface
_getAssetFile() ¶ protected
_getAssetFile(string $url): string|null
Builds asset file path based off url
Parameters
-
string
$url Asset URL
Returns
string|null
deliverAsset() ¶ protected
deliverAsset(Psr\Http\Message\ServerRequestInterface $request, Psr\Http\Message\ResponseInterface $response, Cake\Filesystem\File $file): Psr\Http\Message\ResponseInterface
Sends an asset file to the client
Parameters
-
Psr\Http\Message\ServerRequestInterface
$request The request object to use.
-
Psr\Http\Message\ResponseInterface
$response The response object to use.
-
Cake\Filesystem\File
$file The file wrapper for the file.
Returns
Psr\Http\Message\ResponseInterface
getType() ¶ protected
getType(File $file): string
Return the type from a File object
Parameters
-
File
$file The file from which you get the type
Returns
string
isNotModified() ¶ protected
isNotModified(Psr\Http\Message\ServerRequestInterface $request, Cake\Filesystem\File $file): bool
Check the not modified header.
Parameters
-
Psr\Http\Message\ServerRequestInterface
$request The request to check.
-
Cake\Filesystem\File
$file The file object to compare.
Returns
bool