Commit 2925763acb998d621fd5695592b8ed64b4d1b973

Authored by Adhidarma Hadiwinoto
1 parent 050d92ffb6
Exists in master and in 1 other branch dev

trust proxy

Showing 2 changed files with 7 additions and 0 deletions Inline Diff

1 { 1 {
2 "name": "HTTPGETX", 2 "name": "HTTPGETX",
3 3
4 "# core_url": "Silahkan diisi dengan core url, bisa dikosongkan jika ingin membaca dari main config komodo", 4 "# core_url": "Silahkan diisi dengan core url, bisa dikosongkan jika ingin membaca dari main config komodo",
5 "core_url": "", 5 "core_url": "",
6 6
7 "listener": { 7 "listener": {
8 "partner": { 8 "partner": {
9 "port": 25614 9 "port": 25614
10 },
11 "core": {
12 "port": 25615
10 } 13 }
11 }, 14 },
12 15
13 "# cluster": "Diisi dengan boolean atau angka jumlah anak yang akan dibuat. Jika diisi boolean true, jumlah anak akan dihitung otomatis", 16 "# cluster": "Diisi dengan boolean atau angka jumlah anak yang akan dibuat. Jika diisi boolean true, jumlah anak akan dihitung otomatis",
14 "cluster": false 17 "cluster": false
15 } 18 }
lib/partner-listener/index.js
1 const DEFAULT_LISTENER_FROM_PARTNER_PORT = 25614; 1 const DEFAULT_LISTENER_FROM_PARTNER_PORT = 25614;
2 2
3 const express = require('express'); 3 const express = require('express');
4 4
5 const config = require('komodo-sdk/config'); 5 const config = require('komodo-sdk/config');
6 const logger = require('komodo-sdk/logger'); 6 const logger = require('komodo-sdk/logger');
7 7
8 const middlewareCommon = require('../middlewares/common'); 8 const middlewareCommon = require('../middlewares/common');
9 9
10 const routerInquiry = require('./routers/inquiry'); 10 const routerInquiry = require('./routers/inquiry');
11 const routerPay = require('./routers/pay'); 11 const routerPay = require('./routers/pay');
12 const routerTopup = require('./routers/topup'); 12 const routerTopup = require('./routers/topup');
13 const routerTrxStatus = require('./routers/trx-status'); 13 const routerTrxStatus = require('./routers/trx-status');
14 14
15 const app = express(); 15 const app = express();
16 16
17 if (config.partner && config.partner.trust_proxy) {
18 app.set('trust proxy', config.partner.trust_proxy);
19 }
20
17 app.use(express.json({ extended: true })); 21 app.use(express.json({ extended: true }));
18 app.use(express.urlencoded({ extended: true })); 22 app.use(express.urlencoded({ extended: true }));
19 app.use(middlewareCommon); 23 app.use(middlewareCommon);
20 24
21 app.use('/ping', (req, res) => { 25 app.use('/ping', (req, res) => {
22 res.json({ 26 res.json({
23 error: false, 27 error: false,
24 xid: res.locals.xid, 28 xid: res.locals.xid,
25 from_ip: req.ip, 29 from_ip: req.ip,
26 ts: new Date(), 30 ts: new Date(),
27 request: { 31 request: {
28 method: req.method, 32 method: req.method,
29 userAgent: req.get('user-agent'), 33 userAgent: req.get('user-agent'),
30 contentType: req.get('content-type'), 34 contentType: req.get('content-type'),
31 qs: req.query, 35 qs: req.query,
32 body: req.body, 36 body: req.body,
33 }, 37 },
34 }); 38 });
35 }); 39 });
36 app.use('/inquiry', routerInquiry); 40 app.use('/inquiry', routerInquiry);
37 app.use('/pay', routerPay); 41 app.use('/pay', routerPay);
38 app.use('/topup', routerTopup); 42 app.use('/topup', routerTopup);
39 app.use('/trx-status', routerTrxStatus); 43 app.use('/trx-status', routerTrxStatus);
40 44
41 app.use((req, res) => { 45 app.use((req, res) => {
42 const { xid } = res.locals; 46 const { xid } = res.locals;
43 res.status(404).end(`KOMODO-HTTP-GET-X CENTER.\n404: Method not found.\n\nXID: ${xid}.\n`); 47 res.status(404).end(`KOMODO-HTTP-GET-X CENTER.\n404: Method not found.\n\nXID: ${xid}.\n`);
44 }); 48 });
45 49
46 app.listen(config.listener.partner.port || DEFAULT_LISTENER_FROM_PARTNER_PORT, () => { 50 app.listen(config.listener.partner.port || DEFAULT_LISTENER_FROM_PARTNER_PORT, () => {
47 logger.info(`Listen from partner request on port ${config.listener.partner.port}`); 51 logger.info(`Listen from partner request on port ${config.listener.partner.port}`);
48 }).on('error', (e) => { 52 }).on('error', (e) => {
49 logger.error(`Can not listen request from partner on port ${config.listener.partner.port || DEFAULT_LISTENER_FROM_PARTNER_PORT}. ${e.toString()}`); 53 logger.error(`Can not listen request from partner on port ${config.listener.partner.port || DEFAULT_LISTENER_FROM_PARTNER_PORT}. ${e.toString()}`);
50 process.exit(1); 54 process.exit(1);
51 }); 55 });
52 56