1.0.8 • Published 5 years ago

center-service v1.0.8

Weekly downloads
1
License
ISC
Repository
gitlab
Last release
5 years ago

Install :

=========== 1. step:

  npm i center-service

Config :

=========== 1. create file config_rpc.js : \n content like it :

  routeRpc: {
    'get-text': 'MOduke.x'
  }, 
  //write here or require route rpc,

  hostQueueInfo: {
    user: 'guest',
    password: 'guest',
    host: '127.0.0.1',
    port: '5672'
  },
  queueNameSvCenter: 'sv-center', // dont replace queue name center service 

  queueName: {
    'account': {
      server: 'sv-account',
      client: 'cl-account',
    }
  },
  appName: 'account', //

Note *: appName must same queueName

2: example routeRpc file 'route.js'

    let { userController } = require('../controller/UserController')
    module.exports = {
        'get-info': uContextController.getInfo
    }

3: how to build controler? || How to make controller server?

\n controller will return callback function follow format :

{
  message: "ERR_EMPTY_DATA",
  code: 400,
  data: {  }
}

\n file controller for server UserController.js :

  let getContext = (params, callback) => {
  let { userId } = params
  if (!userId) {
    return callback('Missing parameter', {
      data: {
        "0": "Missing param userId!"
      }
    })
  }

  userDoc.findOne({
    userId: userId
  }).then((item) => {
    // console.log(item);
    if (!item) {
      return callback('ERR_EMPTY_DATA', {
        message: "ERR_EMPTY_DATA",
        code: 400,
        data: {
          "0": `can\'t find data userId: ${userId}`
        }
      })
    }
    return callback(false, item);
  }).catch((e) => {
    console.log(`[ERR] UcontextProService _findAndUpdateMysql function : \n `);
    console.log(`---- err detail : ${e} \n `);
    return callback('ERR_EMPTY_DATA', {
      message: "ERR_EMPTY_DATA",
      code: 400,
      data: { e }
    })
  });
}

4: how to call? || How to to send request to server? || how to make like a api client ?

const express = require('express')
const async = require('async')
const app = express()
let rpcService = require('center-service');
// console.log(rpcService);

const port = 3007
app.listen(port, () => console.log(`Example app listening on port ${port}!`));
app.get('/get-data/:id', function (req, res) {
    rpcService.call({
        service: "account",
        reqData: {
            route: "health_check",
            params: {
                userId: "1234567890",
            }
        }
    }).then((data) => {
        // console.log(data);
        res.send(data)
    });
})
1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.0

5 years ago