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.
Timo Hocker
d298b8e842
update-scanner: automatic update
@sapphirecode/consts: 1.1.20 ==> 1.1.21 minor @sapphirecode/eslint-config-ts: 1.1.10 ==> 1.1.11 minor @sapphirecode/modelling: 1.0.39 ==> 1.0.40 minor eslint: 6.8.0 ==> 7.1.0 major
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
@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:
const requestor = require('requestor');
const express = require('express');
const app = express();
requestor(app, 'api', {opts: {foo: 'bar'}});
app.listen(3000);
api/get-root.js
// will respond to get requests on /
module.exports = (req, res, next, opts) => {
res.send(opts.foo);
};
api/post-subfolder.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
//...
requestor(app, 'api', {subdir: 'subdir'});
// requests that before responded to /foo/bar/ will now respond to /subdir/foo/bar/
Description
Languages
TypeScript
94.5%
JavaScript
5.5%