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
8080est déjà utilisé