koa sendfile
!NPM versionnpm-imagenpm-url
!Build statustravis-imagetravis-url
!Test coveragecoveralls-imagecoveralls-url
!Dependency Statusdavid-imagedavid-url
!Licenselicense-imagelicense-url
!Downloadsdownloads-imagedownloads-urlBasic file-sending utility for koa. It does the following:
- Check if a file exists
- Set content-length, content-type, and last-modified headers
- 304 based on last-modified
- Handle HEAD requests
It does not:
- Check for malicious paths or hidden files
- Support directory indexes
- Cache control
- OPTIONS method
API
sendfile(context, filename)
You must pass the koa context.filename
is the filename of the file.sendfile returns a promise that resolves to the
fs.stat()
result of the filename. If sendfile() resolves, that doesn't mean that a response is set - the filename could be a directory. Instead, check if (context.status)
.const sendfile = require('koa-sendfile')
app.use(async function (ctx, next) {
const stats = await sendfile(ctx, '/Users/jong/.bash_profile')
if (!ctx.status) ctx.throw(404)
})