This repository has been archived on 2020-08-13. You can view files and clone it, but cannot push or open issues or pull requests.
requestor/README.md

71 lines
1.2 KiB
Markdown
Raw Permalink Normal View History

2020-02-05 20:13:43 +01:00
# Requestor
Split express request handlers into individual files to make your api a little
more structured.
## Installation
npmrc:
used to set the registry for @scode
```npmrc
@scode:registry=https://npm.scode.ovh
```
install the package:
`npm i --save @scode/requestor`
## Usage
The path to which the individual modules respond is defined by their name.
'.' is used as path separator.
`method-subdir.subdir.subdir.js`
method can be any of [post, get, put, delete, all]
to avoid names like `get-.js` root is used for the root directory
(`get-root.js`)
index.js:
```js
const requestor = require('requestor');
const express = require('express');
const app = express();
requestor(app, 'api', {opts: {foo: 'bar'}});
app.listen(3000);
```
api/get-root.js
```js
// will respond to get requests on /
module.exports = (req, res, next, opts) => {
res.send(opts.foo);
};
```
api/post-subfolder.js
```js
// will respond to post requests on /subfolder/
module.exports = (req, res, next, opts) => {
res.send(opts.foo);
};
```
optionally, you can set a subdirectory for all requests
```js
//...
requestor(app, 'api', {subdir: 'subdir'});
// requests that before responded to /foo/bar/ will now respond to /subdir/foo/bar/
```