I build a node.js application that connects to MySQL database and then performs CRUD operations. I deployed it into apigee edge. While working in edge I am unable to get main routing page where I want to perform insert and delete operations.
Here I am providing the code and the routing page I want to get in Apigee.
var express = require('express'); var routes = require('./routes'); //var logger = require('morgan'); var http = require('http'); var path = require('path'); //load customers route var customers = require('./routes/customers'); var app = express(); var connection = require('express-myconnection'); var mysql = require('mysql'); // all environments app.set('port', process.env.PORT || 4300); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'ejs'); //app.use(express.favicon()); app.use(express.logger('dev')); //app.use(logger); app.use(express.json()); app.use(express.urlencoded()); app.use(express.methodOverride()); app.use(express.static(path.join(__dirname, 'public'))); // development only if ('development' == app.get('env')) { app.use(express.errorHandler()); } /*------------------------------------------ connection peer, register as middleware type koneksi : single,pool and request -------------------------------------------*/ app.use( connection(mysql,{ host: '******', user: 'root', password : '*******', port : 3306, //port mysql database:'apigee' },'pool') //or single ); app.get('/', routes.index); app.get('/customers', customers.list); app.get('/customers/add', customers.add); app.post('/customers/add', customers.save); app.get('/customers/delete/:id', customers.delete_customer); app.get('/customers/edit/:id', customers.edit); app.post('/customers/edit/:id',customers.save_edit); app.use(app.router); var server=app.listen(4300,function(){ console.log("We have started our server on port 43000"); }); In this I am able to get two pages and I am unable to get Main routing page ...code as follows....
exports.list = function(req, res){ req.getConnection(function(err,connection){ var query = connection.query('SELECT * FROM customer',function(err,rows) { if(err) console.log("Error Selecting : %s ",err ); res.render('customers',{page_title:"Customers - Node.js",data:rows}); console.log(rows); }); //console.log(query.sql); }); }; exports.add = function(req, res){ res.render('add_customer',{page_title:"Add Customers - Node.js"}); }; exports.edit = function(req, res){ var id = req.params.id; req.getConnection(function(err,connection){ var query = connection.query('SELECT * FROM customer WHERE id = ?',[id],function(err,rows) { if(err) console.log("Error Selecting : %s ",err ); res.render('edit_customer',{page_title:"Edit Customers - Node.js",data:rows}); }); //console.log(query.sql); }); }; /*Save the customer*/ exports.save = function(req,res){ var input = JSON.parse(JSON.stringify(req.body)); req.getConnection(function (err, connection) { var data = { name : input.name, address : input.address, email : input.email, phone : input.phone }; var query = connection.query("INSERT INTO customer set ? ",data, function(err, rows) { if (err) console.log("Error inserting : %s ",err ); res.redirect('/customers'); }); // console.log(query.sql); get raw query }); }; exports.save_edit = function(req,res){ var input = JSON.parse(JSON.stringify(req.body)); var id = req.params.id; req.getConnection(function (err, connection) { var data = { name : input.name, address : input.address, email : input.email, phone : input.phone }; connection.query("UPDATE customer set ? WHERE id = ? ",[data,id], function(err, rows) { if (err) console.log("Error Updating : %s ",err ); res.redirect('/customers'); }); }); }; exports.delete_customer = function(req,res){ var id = req.params.id; req.getConnection(function (err, connection) { connection.query("DELETE FROM customer WHERE id = ? ",[id], function(err, rows) { if(err) console.log("Error deleting : %s ",err ); res.redirect('/customers'); }); }); };