我尝试遵循登录/注册后端的教程,但我不明白为什么我在 4000 端口上获得许可(还尝试了其他端口只是为了确保该端口不是问题)。 这是教程文字
.env 文件(在我的项目中我有正确的密码和用户
`MONGO_URL =
"mongodb+srv://****:*****@cluster0.nusq9us.mongodb.net/?retryWrites=true&w=majority&appName=Cluster0";
PORT = 4000;`
Index.js代码:
`const express = require("express");
const mongoose = require("mongoose");
const cors = require("cors");
const app = express();
require("dotenv").config();
const { MONGO_URL, PORT } = process.env;
mongoose
.connect(MONGO_URL, {
useNewUrlParser: true,
useUnifiedTopology: true,
})
.then(() => console.log("MongoDB is connected successfully"))
.catch((err) => console.error(err));
app.listen(PORT, () => {
console.log(`Server is listening on port ${PORT}`);
});
app.use(
cors({
origin: ["http://localhost:4000"],
methods: ["GET", "POST", "PUT", "DELETE"],
credentials: true,
})
);
app.use(express.json());`
错误:
`Error: listen EACCES: permission denied 4000;
at Server.setupListenHandle [as _listen2] (node:net:1855:21)
at listenInCluster (node:net:1920:12)
at Server.listen (node:net:2019:5)
at Function.listen (C:\Users\Gizas\Desktop\Licenta\server\node_modules\express\lib\application.js:635:24)
at Object.<anonymous> (C:\Users\Gizas\Desktop\Licenta\server\index.js:16:5)
at Module._compile (node:internal/modules/cjs/loader:1241:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1295:10)
at Module.load (node:internal/modules/cjs/loader:1091:32)
at Module._load (node:internal/modules/cjs/loader:938:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:83:12)
Emitted 'error' event on Server instance at:
at emitErrorNT (node:net:1899:8)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
code: 'EACCES',
errno: -4092,
syscall: 'listen',
address: '4000;',
port: -1
}
Node.js v20.9.0
[nodemon] app crashed - waiting for file changes before starting...`
我按照教程操作了,但没有成功?尝试更改端口并杀死所有节点进程
删除
;
文件中的 .env