On this page
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.
Properties summary
-
$cacheTime
protectedstring
-
$typeMap
protectedarray
Method Summary
-
__construct() publicConstructor.
-
__invoke() publicServe assets if the path matches one.
-
_getAssetFile() protectedBuilds asset file path based off url
-
deliverAsset() protectedSends an asset file to the client
-
getType() protectedReturn the type from a File object
-
isNotModified() protectedCheck the not modified header.
Method Detail
__construct()source public
__construct( array $options [] )
Constructor.
Parameters
-
array
$options
optional [] - The options to use
__invoke()source public
__invoke( Psr\Http\Message\ServerRequestInterface $request , Psr\Http\Message\ResponseInterface $response , callable $next )
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\ResponseInterfaceA response
_getAssetFile()source protected
_getAssetFile( string $url )
Builds asset file path based off url
Parameters
-
string
$url
- Asset URL
Returns
stringAbsolute path for asset file
deliverAsset()source protected
deliverAsset( Psr\Http\Message\ServerRequestInterface $request , Psr\Http\Message\ResponseInterface $response , Cake\Filesystem\File $file )
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\ResponseInterfaceThe response with the file & headers.
getType()source protected
getType( Cake\Filesystem\File $file )
Return the type from a File object
Parameters
Cake\Filesystem\File
$file
- The file from which you get the type
Returns
stringisNotModified()source protected
isNotModified( Psr\Http\Message\ServerRequestInterface $request , Cake\Filesystem\File $file )
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
booleanProperties detail
$typeMapsource
protected array
A extension to content type mapping for plain text types.
Because finfo doesn't give useful information for plain text types, we have to handle that here.
[
'css' => 'text/css',
'json' => 'application/json',
'js' => 'application/javascript',
'ico' => 'image/x-icon',
'eot' => 'application/vnd.ms-fontobject',
'svg' => 'image/svg+xml',
'html' => 'text/html',
'rss' => 'application/rss+xml',
'xml' => 'application/xml',
]
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.4/class-Cake.Routing.Middleware.AssetMiddleware.html