Download the PHP package mako/pusher without Composer
On this page you can find all versions of the php package mako/pusher. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package pusher
Short Description Asset preloading for the Mako Framework
License BSD-3-Clause
Homepage http://makoframework.com
Informations about the package pusher
Mako Pusher
Pusher enables you to easily implement preloading
, prefetching
, prerendering
, dns-prefetching
and preconnecting
in your applications.
Requirements
Mako 8.0 or greater.
Usage
If you're using the PusherMiddleware
then you can access the pusher instance using the Request::getAttribute()
method.
$pusher = $this->request->getAttribute('mako.pusher');
You can tell the client to preload your assets.
$pusher->push('/assets/css/style.css', ['preload']);
// You can also use the "preload" convenience method
$pusher->preload('/assets/css/style.css');
Preloading requires a HTTP2 server with push support (e.g. Apache 2.4.24+).
You can tell the browser to prefetch resources that you think the user will need next.
$pusher->push('https://example.org/image.jpg', ['prefetch', 'as' => 'image']);
// You can also use the "prefetch" convenience method
$pusher->prefetch('https://example.org/image.jpg', ['as' => 'image']);
You can tell the browser to prefetch and render resources that you think the user will visit next.
$pusher->push('https://example.org/next', ['prerender']);
// You can also use the "prerender" convenience method
$pusher->prerender('https://example.org/next');
You can resolve the DNS lookup for a domain that you know your client will have to connect to when fetching resources.
$pusher->push('https://fonts.gstatic.com', ['dns-prefetch']);
// You can also use the "dnsPrefetch" convenience method
$pusher->dnsPrefetch('https://fonts.gstatic.com');
You can pre-connect to a domain that you know your client will have to connect to when fetching resources. This will resolve the DNS lookup but it also includes the TCP handshake, and optional TLS negotiation.
$pusher->push('https://fonts.gstatic.com', ['preconnect', 'crossorigin' => true]);
// You can also use the "preconnect" convenience method
$pusher->preconnect('https://fonts.gstatic.com', ['crossorigin' => true]);