작성자 없음
작성자 정보가 삭제된 글입니다.
해결된 질문
작성
·
23
0
안녕하세요..
아래와 같이 에러가뜨는데요;;
code: 'MODULE_NOT_FOUND',
requireStack: [
'/Users/sungwon/Desktop/Project/Web/company_website/backend/index.js'
]
}
Node.js v24.4.0
[nodemon] app crashed - waiting for file changes before starting...
.
backend > index.js코드 입니다.
require("dotenv").config();
const express = require("express");
const mongoose = require("mongoose");
const cookieParser = require("cookie-parser");
const cors = require("cors");
const app = express();
const PORT = 3000;
const userRoutes = require("./routes/user");
app.use(express.json())
app.use(express.urlencoded())
app.use(cookieParser());
app.use(cors({
origin: "*",
credentials: true,
}));
app.use("/api/auth", userRoutes);
app.get("/", (req, res) => {
res.send("Hello world");
});
app.get("/api/check-ip", (req, res) => {
const clientIP = req.ip || req.connection.remoteAddress;
const blacklistedIPs = JSON.parse(process.env.IP_BLACKLIST || '[]');
console.log("Client IP:", clientIP);
console.log("Blacklisted IPs:", blacklistedIPs);
if (blacklistedIPs.includes(clientIP)) {
return res.status(403).json({ allowed: false, message: "Access denied - IP is blacklisted" });
}
res.json({ allowed: true });
});
mongoose
.connect(process.env.MONGO_URI)
.then(() => console.log("MongoDB와 연결이 되었습니다."))
.catch((error) => console.log("MongoDB와 연결에 실패했습니다: ", error));
app.listen(PORT, () => {
console.log("Server is running");
});
답변 2
0
안녕하세요. 질문 주셔서 감사합니다.
해당 오류는 MODULE_NOT_FOUND로 이전에 문의글과 비슷한 에러입니다. MODULE_NOT_FOUND 오류 - 인프런 | 커뮤니티 질문&답변
구체적으로 어떤 모듈이 없는지 또는 인식하지 못했는지 확인하기 위해서 일단 챕터 5-1 IP블랙리스트 index.js 코드를 살펴보자면
require("dotenv").config();
const express = require("express");
const mongoose = require("mongoose");
const cookieParser = require("cookie-parser");
const cors = require("cors");
const userRoutes = require("./routes/user");
다음 패키지들이 사용됩니다:
dotenv
express
mongoose
cookie-parser
cors
또한, ./routes/user
경로에서 라우트 파일을 불러오고 있습니다.
챕터 4-4와 비교해서 새로 추가된 패키지는 cors 패키지입니다. 해당 패키지가 실제로 설치되어 있는지 package.json 및 node_modules 폴더에서 확인 부탁드립니다.
그 후, 다음 사항을 확인해 주세요:
패키지 설치 여부 확인backend
디렉토리에서 아래 명령어를 실행하여 필요한 패키지를 설치해 주세요
npm install dotenv express mongoose cookie-parser cors
라우트 경로 확인routes
폴더가 backend
디렉토리 내부에 위치해 있고,
그 안에 user.js
파일이 존재하는지 확인해 주세요.
경로 작성 확인require("./routes/user")
가 정확한 상대 경로인지 확인해 주세요.
파일 위치가 다를 경우, 경로를 조정해야 할 수 있습니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다. jasan88님께서 모듈을 찾을 수 없다는 MODULE_NOT_FOUND
에러에 관한 문제를 겪고 계시군요. 이는 보통 모듈을 설치하지 않았거나, 모듈의 경로가 잘못되었을 때 발생하는 오류입니다. 다음은 문제를 해결하기 위한 몇 가지 방법입니다.
먼저, 사용하는 모듈들이 모두 설치되어 있는지 확인해 주세요. 다음과 같은 명령어로 필요한 모듈을 설치할 수 있습니다:
cd backend
npm install express mongoose dotenv cookie-parser cors
이 명령을 실행하면 package.json
의 dependencies
섹션에 해당 모듈들이 포함되어 있는지 확인할 수 있습니다.
require
함수 내에 명시된 모듈의 경로가 정확한지 확인합니다. 예를 들어, ./routes/user
의 경로가 올바른지 확인해야 합니다. routes
폴더가 프로젝트 디렉토리 안에 제대로 위치해 있는지, user.js
파일이 그 안에 존재하는지 확인하세요.
코드에서 process.env.MONGO_URI
와 process.env.IP_BLACKLIST
를 사용하고 계십니다. 따라서 .env
파일에 환경 변수가 제대로 설정되어 있는지 확인해 주세요. 환경 변수가 누락되면 서버가 올바르게 시작되지 않을 수 있습니다.
MODULE_NOT_FOUND
에러가 반복된다면, 에러 메시지에 나타난 경로나 모듈 이름에서 오타가 없는지 다시 한번 확인해보세요. 또한, 다른 비슷한 이슈를 해결한 사례가 있으니 한 번 참고해 보시면 좋습니다:
위의 해결법이 도움이 되길 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.