Files
2017-07-31 11:33:31 +05:30

39 lines
916 B
JavaScript

'use strict'
const { Router } = require('express')
const restify = require('restify')
const net = require('net')
const nos = require('net-object-stream')
const router = Router()
const {
ADDERSERVICE_SERVICE_HOST,
ADDERSERVICE_SERVICE_PORT
} = process.env
function createClient (ns, opts) {
return createClient[ns] || (createClient[ns] = nos(net.connect(opts)))
}
router.get('/', function (req, res) {
res.render('add', { first: 0, second: 0, result: 0 })
})
router.post('/calculate', function (req, res, next) {
const client = createClient('calculate', {
host: ADDERSERVICE_SERVICE_HOST,
port: ADDERSERVICE_SERVICE_PORT
})
const role = 'adder'
const cmd = 'add'
const { first, second } = req.body
client.once('data', (data) => {
const { result } = data
res.render('add', { first, second, result })
})
client.write({role, cmd, first, second})
})
module.exports = router