2.0.0-4 • Published 6 years ago
readfile-directory-index-fallback v2.0.0-4
readfile-directory-index-fallback
fs.readFile()
using the directory index as a fallback
const readfileDirectoryIndexFallback = require('readfile-directory-index-fallback');
// When the file `index.html` exists in the `foo` directory
readfileDirectoryIndexFallback('foo', (err, buf) => {
buf.toString(); //=> the contents of `foo/index.html`
});
Installation
npm install readfile-directory-index-fallback
API
const readfileDescendantFallback = require('readfile-directory-index-fallback');
readfileDirectoryIndexFallback(filePath, options, callback)
filePath: string
Buffer
Uint8Array
URL
integer
options: Object
(fs.readFile()
options) or string
(encoding)
callback: Function
First, it tries to read a file at filePath. Then,
- If the filePath points to an existing file, it passes the contents of the file to the callback.
- If nothing exists in filePath, it passes an error to the callback.
- If filePath points to an existing directory, it tries to read
index.html
(or the file specified indirectoryIndex
option) immediately under filePath directory.
options
In addition to the following, all fs.readFile()
options are available.
options.directoryIndex
Type: string
or boolean
Default: 'index.html'
A filename of the directory index contents (e.g. index.php
).
// When the file `home.html` exists in the `site/contents` directory
readfileDirectoryIndexFallback('site/contents', {directoryIndex: 'home.html'}, (err, buf) => {
buf.toString(); //=> the contents of `site/contents/index.html`
});
false
disables the fallback feature, that is, this function becomes the same as fs.readFile
.
// Even if index.html exists in the `foo` directory
readfileDirectoryIndexFallback('foo', {directoryIndex: false}, err => {
err.code; //=> `EISDIR`
});
callback(error, buffer)
error: Error
if it fails to read a file, otherwise null
buffer: Buffer
or String
(according to fs.readFile
option)
License
ISC License © 2017 - 2019 Shinnosuke Watanabe