Skip to content
索引

micromatch

https://www.npmjs.com/package/micromatch

glob

glob允许使用规则,从而获取对应规则匹配的文件。这个glob工具基于javascript.它使用了 minimatch 库来进行匹配

用法:https://www.cnblogs.com/raind/p/10211951.html

minimatch

用来模式匹配字符串的库,glob库支持的的各种模式都来自于minimatch

micromatch

是minimatch的增强版本

polka

https://www.npmjs.com/package/polka

一个微型网络服务器,是一个极其小巧、性能卓越的Express.js替代品,是的,Express已经很快了,而且没有那么大🤔 , 但polka表示,还有(以某种方式)改进的空间

本质上,Polka只是一个本地HTTP服务器,增加了对路由、中间件和子应用程序的支持。就是这样!🎉

compression

JavaScript图像压缩器。使用浏览器的原生canvas.toBlob API来执行压缩工作,这意味着它是有损压缩、异步的,并且在不同的浏览器中具有不同的压缩效果。通常,在上载图像之前,使用此命令在客户端预压缩图像

sirv

用于服务静态资源请求的优化的和轻量级中间件

用法

js
const sirv = require('sirv');
const polka = require('polka');
const compress = require('compression')();

// Init `sirv` handler
const assets = sirv('public', {
  maxAge: 31536000, // 1Y
  immutable: true
});

polka()
  .use(compress, assets)
  .use('/api', require('./api'))
  .listen(3000, err => {
    if (err) throw err;
    console.log('> Ready on localhost:3000~!');
  });
const sirv = require('sirv');
const polka = require('polka');
const compress = require('compression')();

// Init `sirv` handler
const assets = sirv('public', {
  maxAge: 31536000, // 1Y
  immutable: true
});

polka()
  .use(compress, assets)
  .use('/api', require('./api'))
  .listen(3000, err => {
    if (err) throw err;
    console.log('> Ready on localhost:3000~!');
  });

etag

是否生成和添加ETag到响应头,Etag是协商缓存

maxAge

启用响应的缓存控制头并设置最大值(以秒为单位) 例如,maxAge:31536000相当于一年

js
  const serve = sirv(site.outDir, {
    etag: true,
    maxAge: 31536000,
    immutable: true,
    setHeaders(res, pathname) {
      if (notAnAsset(pathname)) {
        // force server validation for non-asset files since they
        // are not fingerprinted
        res.setHeader('cache-control', 'no-cache')
      }
    }
  })
  const serve = sirv(site.outDir, {
    etag: true,
    maxAge: 31536000,
    immutable: true,
    setHeaders(res, pathname) {
      if (notAnAsset(pathname)) {
        // force server validation for non-asset files since they
        // are not fingerprinted
        res.setHeader('cache-control', 'no-cache')
      }
    }
  })

Released under the MIT License.