svc-fbr v0.2.0
svc-fbr
File Browser Service
This module can be used in different ways:
As a standalone service: running the module's server in the background allows different processes to use this service through a REST API. This allows user to traverse an accessible network file system (NFS). The terminal interface is useful in controlling the service on the host. Note: you can import the module in your Node.js applications to abstract the REST api.
As an imported module: you can simply
requirethe module in Node.js applications thus using the module API. This should be used by application accessing file systems attached to the system.
⇒ npm install svc-fbr --globalModule API:
const fbr = require("svc-fbr");fbr.start([options , callback])
Start the service.
options(service options)callback(Function):- signature:
callback(err)
- signature:
fbr.ping([options , callback])
Ping the service.
options(service options)callback(Function):- signature:
callback(err, response) response(Object): passed on successresponse.running(Boolean)
- signature:
fbr.stop([options , callback])
Stop the service.
options(service options)callback(Function):- signature:
callback(err)
- signature:
fbr.query(params, callback)
Query service.
options(service options + Parameters)callback(Function):- signature:
callback(err, res)
- signature:
service options
An Object of options as configurations of the service.
Properties:
ip(String): ip of serverport(Number): port of the serverhome: (String) path to home directory. This is default path used ifpathparameter is not passed.
Prescedence (from Left-To-Right):
ip:arguments,${FBRS_IP},"127.0.0.1"port:arguments,${FBRS_PORT},9432home:arguments,${FBRS_HOME},process.env.HOME
parameters
An Object of query parameters.
Properties:
path(String): path to look upignoreDotFiles(Boolean=false): ignore files with names starting with a.(dot).ignoreCurDir(Boolean=false): ignore the current directory,., from results.ignoreUpDir(Boolean=false): ignore the upper directory,.., from results.statEach(Boolean=true): stat each of the contained files ifpathis a directory.
REST API:
Available endpoints once the service is started.
traversal of file-system:
GET /The parameters should be sent as query string.
Success response:
- status:
200 OK body:
{ "content": <content>, "<type>": true }where
<content>would be:String[]: array of fs.Stats, if path points to directoryString: file content, if path points to file and<type>would be the name of a fs.Stats function e.g. "isDirectory", that returnstrue.
ping service:
GET /pingSuccess response:
- status:
200 OK
stopping service:
GET /stopSuccess response:
- status:
200 OK
terminal usage:
⇒ svc-fbr help
svc-fbr: file browser service
?, status check status of service
H, help show this help information
V, version show version information
s, start start service
x, stop stop service
See https://github.com/forfutureLLC/svc-fbr for feature-requests and bug-reportstips:
To start the service as daemon, use forever:
$ forever start svc-fbr start # note the TWO <start>slicense:
The MIT License (MIT)
Copyright (c) 2015 Forfuture LLC we@forfuture.co.ke