0.3.6 • Published 11 months ago

@andersonalmeidax0/baseserver v0.3.6

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

BaseServer

1 Log
2 Registra automaticamente apis com anotaçoes ==> colocar api classes em diretorio "api" . Usar anotaçoes
3 Gera swagger de apis - Usar anotaçoes

how to use:

  1. Create server

refs from s3

https://rishabhsharma.bio/uploading-media-to-s3-bucket-with-node-js-and-multer-middleware-8d720c2486a1
https://abbaslanbay.medium.com/uploading-files-to-aws-s3-with-multer-and-the-node-js-aws-sdk-7cad8dc87fc2
https://dev.to/lakshmyps/upload-file-to-aws-s3-using-react-nodejs-5ffj

Example

  /**
   * Gera documentação swagger e UI de API.
   * Para isto é necessário informas o path para instrospection, e colocar anotações:
   * [VERBO]  [PATH/ENTITY]
   * @tags [ENTITY]
   * @param {[TYPE]} request.body
   *
   * Para registrar typos
   * @typedef {object} [Type]
   * @property {string,object,number} [name]
   */

const { BaseServer } = require("./BaseServer");


class AppServer extends BaseServer {
  customInit() {
    console.log('customInit');
  }
  getRequestContext(req) {
    return {};
  }
}


var app=express();
var dbContext ={};
let server = new AppServer(PORT, app,dbContext);
server.init();
server.registerUtils();
server.registerSwaggerDoc();
server.registerAPIs();
server.registerRoutes();

/*
app._router.stack.forEach(function(r){
  if (r.route && r.route.path){
    console.log(r.route.path)
  }
})
*/

server.listen().catch(console.error);;

TryCatchWrapper

validate return of fn and translater to HTTP status codes
if ok ===> 200
if r.inserterID ==> 201
if r == null ==> 404
if error.code = 11000 (dupkey) ==> 409
if rangeError ==> 422
else ==> 500

DBBaseController (mongodb)

util class to perform mongoDB operations simplified interface to mongoDB DBBaseController(dbcontext, coll, dtoFactory)

validateDefinedAndFilter

with object, validate if keys are defined, and filter
Ex: validateDefinedAndFilter(obs,"name","customer")

webserver

0.3.6

11 months ago

0.3.5

11 months ago

0.3.4

11 months ago

0.3.3

11 months ago

0.3.2

11 months ago

0.3.1

11 months ago

0.3.0

11 months ago

0.2.2

11 months ago

0.2.1

11 months ago

0.2.0

11 months ago

0.1.7

11 months ago

0.1.6

11 months ago

0.1.5

11 months ago

0.1.3

11 months ago

0.1.2

11 months ago

0.1.1

12 months ago

0.1.0

1 year ago