Skip to content

Instantly share code, notes, and snippets.

@guybedford
Last active December 26, 2015 21:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save guybedford/7214487 to your computer and use it in GitHub Desktop.
Save guybedford/7214487 to your computer and use it in GitHub Desktop.
SPDY asset server API
var spdy = require('spdy'); // node-spdy
var spdyAssetServer = require('spdy-asset-server'); // the proposed spdy-asset-server library
// given a url, provide the asset response stream
// custom serving function allows dynamic + static assets
var assetServer = new spdyAssetServer(function(url, stream) {
if (url == 'style/style.css')
stream.pipe(fs.createReadStream('/local/file/system/style.css'));
else if (url == 'style/style.less')
stream.pipe(less.createEncodingStream(fs.createReadStream('/local/file/system/style.less')));
});
var server = spdy.createServer(function(req, res) {
if (req.url.substr(0, 6) == 'style/')
assetServer.serve(req);
else
// normal server serving here
});
server.listen(443);
@guybedford
Copy link
Author

Note that SPDY push for JavaScript modules with import syntax ONLY applies to imports that are relative names: import "./relative" / import "../some/module". Standard relative resolution rules for all loaders MUST thus be an assumption of the module system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment