Je rencontre des problèmes pour démarrer un simple serveur Node.js Express.js sur localhost.
J'ai essayé avec
node Express.js
en vain. p>
J'ai eu cette erreur
// express.js const mysql = require('mysql'); const express = require('express'); const router = express.Router(); const bodyParser = require('body-parser'); const hostname = '127.0.0.1'; const port = '8080'; const app = express(); app.set('port', process.env.PORT || 8080); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); const con = mysql.createConnection({ host: 'localhost', user: 'bojan', password: 'Hamurabi77', database: 'user' }); con.connect((err) => { if (err) throw err; console.log('Connected!'); }); const createDatabase = 'CREATE DATABASE user'; con.query(createDatabase, (err, result, fields) => { if (err) throw err; console.log('Created!'); }); const createTable = 'CREATE TABLE user (id AUTO_INCREMENT PRIMARY_KEY something VARCHAR(255))'; con.query(createTable, (err, result, fields) => { if (err) throw err; console.log('Created!'); }); app.get('/users', (req, res, end) => { const selectUsers = `SELECT * FROM user`; con.query(selectUsers, (err, result, fields) => { if (err) throw err; console.log('Selected!'); }); res.json(); res.send('Selected!'); res.end(); }); app.get('/users/:id', (req, res, end) => { const selectUserByID = `SELECT * FROM user WHERE id=${req.id}`; con.query(selectUserByID, (err, result, fields) => { if (err) throw err; console.log('Selected by ID!'); }); res.json(); res.send('Selected by ID!'); res.end(); }); app.post('/user/insert', (req, res, end) => { const insertUser = `INSERT INTO user SET (something) VALUES (${req.something})`; con.query(insertUser, (err, result, fields) => { if (err) throw err; console.log('Inserted!'); }); res.json(); res.send('Inserted!'); res.end(); }); app.post('/user/update/:id', (req, res, end) => { const updateUserByID = `UPDATE user SET (something) VALUES (${req.something}) WHERE id=${req.id}`; con.query(updateUserByID, (err, result, fields) => { if (err) throw err; console.log('Updated!'); }); res.json(); res.send('Updated!'); res.end(); }); app.post('/user/delete/:id', (req, res, end) => { const deleteUserByID = `DELETE * FROM user WHERE id=${req.id}`; con.query(deleteUserByID, (err, result, fields) => { if (err) throw err; console.log('Deleted!'); }); res.json(); res.send('Deleted!'); res.end(); }); router(app); app.listen(hostname, port, () => { console.log(`Connection running at https://${hostname}:${port}!`); });
Mon code est
$ node Express.js events.js:183 throw er; // Unhandled 'error' event ^ Error: listen EACCES 127.0.0.1 at Object._errnoException (util.js:992:11)
Quel est le problème avec mon code? Toute suggestion sera appréciée. Je m'attends à ce qu'il soit disponible sur https: // localhost: 8080
3 Réponses :
Vous rencontrez probablement un problème lors de la création du serveur sur votre machine locale.
const http = require('http'); router(app); const server = http.createServer(app); server.listen(3090, () => { console.log('Server is on port 3090'); });
Pouvez-vous essayer? Si vous rencontrez des erreurs, veuillez les commenter.
Pas besoin de fournir le nom d'hôte ici, essayez le code ci-dessous:
app.listen(port, () => { console.log(`Connection running at https://${hostname}:${port}!`); });
Essayez ceci, premier nom de port puis nom d'hôte
app.listen(port, hostname, () => { console.log(`Connection running at https://${hostname}:${port}!`); });
Votre port
8080
est déjà utilisé