I'm getting a ReferenceError (not defined) but I don't see why. It's defined in the module dataController.js (at end)
Server.js
{
const express = require('express');
const app = express();
var path = require('path');
var bodyParser = require('body-parser');
var dataController = require('./dataController');
const { nextTick } = require('process');
//app.use(express.static(path.join(__dirname, ''))); //original worked with 'build'
const basePathToData = path.join(__dirname, './');
console.log('Basepath: '+ basePathToData);
const options = {
dotfiles: 'allow',
etag: true,
extensions: ['htm', 'html','json'],
index: false,
maxAge: '1d',
redirect: true,
setHeaders: function (res, path, stat) {
res.set('x-timestamp', Date.now());
}
};
app.use(express.static(path.join(__dirname, 'build'))); //original
//app.use(express.static(basePathToData, options));
const port = 3003;
app.get('/api/data',dataController.getData);
console.log("Route ready: /api/data");
app.listen(process.env.PORT || port);
console.log('listening on port: '+ port.toString());
}
dataController.js
const path = require('path');
const fs = require('fs');
const basePathToData = path.join(__dirname, '.');
const getJsonData = function (basePathToData, filename) {
var filename = path.join(basePathToData, filename);
return JSON.parse(fs.readFileSync(filename, 'utf-8'));
};
exports.getData = function (request, response) {
var data = getData(basePathToData, 'Vitals_observation.json');
setTimeOut(function () {
return response.send(data);
}, 100);
};
Here's the key part of the error from running server.js:
listening on port: 3003 ReferenceError: getData is not defined at exports.getData (C:\Code-repos\partners-api\dataController.js:13:16) at Layer.handle [as handle_request] (C:\Code-repos\partners-api\node_modules\express\lib\router\layer.js:95:5) at next (C:\Code-repos\partners-api\node_modules\express\lib\router\route.js:137:13) at Route.dispatch (C:\Code-repos\partners-api\node_modules\express\lib\router\route.js:112:3) at Layer.handle [as handle_request] (C:\Code-repos\partners-api\node_modules\express\lib\router\layer.js:95:5) at C:\Code-repos\partners-api\node_modules\express\lib\router\index.js:281:22 at Function.process_params (C:\Code-repos\partners-api\node_modules\express\lib\router\index.js:335:12) at next (C:\Code-repos\partners-api\node_modules\express\lib\router\index.js:275:10) at SendStream.error (C:\Code-repos\partners-api\node_modules\serve-static\index.js:121:7) at SendStream.emit (events.js:375:28)
I'm ready for a teachable moment and a chance to learn something... Thanks