I'm using Node.js to make a networking app equipped with a database and I keep getting an error message:
Error: connect ETIMEOUT,
app.js
const express = require('express')
const mysql = require('mysql')
const dotenv = require('dotenv')
const path = require('path')
const cookieParser = require('cookie-parser')
const app = express()
dotenv.config({path:'./.env'})
app.set('view engine', 'hbs')
const publicDirectory = path.join(__dirname, './public')
app.use(express.static(publicDirectory))
app.use(express.urlencoded({extended: false}))
app.use(express.json())
app.use(cookieParser())
const db = mysql.createConnection({
host: process.env.DATABASE_HOST,
user: process.env.DATABASE_USER,
database: process.env.DATABASE,
password: process.env.DATABASE_PASSWORD
})
db.connect( (error) => {
if(error){
console.log(error)
}else{
console.log('DB Connected!')
}
})
app.use('/', require ('./routes/pages'))
app.use('/auth', require ('./routes/auth'))
app.listen(5000, () => {
console.log('Your Connected To Port 5000')
})
I store most of my important info in a .env file for security purposes
.env
DATABASE = bullshit
DATABASE_USER = username
DATABASE_HOST = 192.168.1.3
DATABASE_PASSWORD = password
JWT_SECRET = mysupersecretpassword
JWT_EXPIRES_IN = 90d
JWT_COOKIE_EXPIRES = 90
auth.js
const express = require('express')
const authController = require('../controllers/auth')
const router = express.Router()
router.post('/register', authController.register)
router.post('/login', authController.login)
module.exports = router
pages.js
const express = require('express')
const router = express.Router()
router.get('/', (req,res) => {
res.render('index')
})
router.get('/register', (req,res) => {
res.render('register')
})
router.get('/login', (req,res) => {
res.render('login')
})
router.get('/profile', (req,res) => {
res.render('profile')
})
module.exports = router
someone told me to change the host to my ip address and so I did. But when I did that's when I got the ETIMEOUT error message. PLEASE HELP