const express = require('express'); const router = express.Router(); const sendRequest = require('utils/send-request'); const sendResponse = require('utils/send-response'); const validate = require('utils/validator'); const conf = require('utils/config'); const timeout = conf.get('requestTimeout'); router.get('/', async (req, res) => { // get input (req.params, req.query, req.body) console.log('GET'); let data = req.body; let rules = {}; // validate input, handle error // validate(data, rules) // .then(() => { // // logic // return sendRequest.get('http://127.0.0.1/', timeout, req.session); // }) // .then((response) => { // console.log('res = ' + response); // res.send('GET Sale Area'); // }) // .catch((error) => { // console.log('catch ' + error); // if (error instanceof ValidationError) { // let response = sendResponse.missingOrInvalidResponse(error.instance[0].message); // res.status(403); // res.json(response); // } else if (error instanceof UnirestError) { // console.log('hey'); // res.status(500); // res.send(error.instance.message); // } else { // res.status(501); // res.send(error); // } // }); try { await validate(data, rules); let response = await sendRequest.get('http://127.0.0.1/', timeout, req.session); console.log('res = ' + response); res.send('GET Sale Area'); } catch(error) { let errResponse = sendResponse.handleError(error); res.status(errResponse.code); res.send(errResponse.object); } }); router.post('/', (req, res) => { // get input (req.params, req.query, req.body) let data = req.body; let rules = {}; // validate input, handle error indicative.validate(data, rules) .then(() => { // logic sendRequest.post('http://10.1.2.155:3738/api/heroes', timeout, req.session, data) .then((response) => { console.log(response.body); res.send('POST Sale Area'); }) .catch((error) => { console.log(error); res.status(500); res.send('Error POST Sale Area'); }); }) .catch((error) => { let response = sendResponse.missingOrInvalidResponse(error.message); res.status(403); res.json(response); }); }); router.put('/', (req, res) => { res.send('PUT Sale Area'); }); router.delete('/', (req, res) => { res.send('DELETE Sale Area'); }); module.exports = router;