A SPDY Push helper to be used with spdy.
- Handles
close
events and file descriptor leaks - Automatically gzips
- Automatically sets the
content-length
andcontent-type
headers if it can - Supports pushing strings, buffers, streams, and files
var spdy = require('spdy-push');
require('spdy').createServer(require('spdy-keys'), function (req, res) {
if (res.isSpdy) {
spdy(res).push('/script.js', {
filename: 'public/script.js', // resolves against CWD
}).catch(function (err) {
console.error(err.stack); // log any critical errors
})
}
res.statusCode = 204;
res.end();
})
path
is the path of the object being pushed. Can also be set asoptions.path
.priority
is the priority between0-7
of the push stream with7
, the default, being the lowest priority. Can also be set asoptions.priority
.options
are:headers
body
- aString
,Buffer
, orStream.Readable
bodyfilename
- a path to a file. Resolves against CWD.
Either options.body
or options.filename
must be set.
You do not need to set the following headers:
content-encoding
content-length
content-type
Waits until the acknowledge event.
Waits until the entire stream has been flushed.