강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của shere17652294
shere17652294

câu hỏi đã được viết

[Cập nhật] Sách giáo khoa Node.js - Từ cơ bản đến thực hành dự án

app.use와 req.url

Đã giải quyết

Viết

·

423

0

 안녕하세요 조현영님 

  이번에는 req.url과 app.use의 관계에 대해서 질문해봅니다.

app.use("/test", (req, res, next) => {
    if (req.method === "GET") {
        console.log(`${req.url} 디렉터리에 ${req.method}요청이 들어왔습니다!`);
        next();
    } else if (req.method === "POST") {
        console.log(`${req.url} 디렉터리에 ${req.method}요청이 들어왔습니다!`);
        next();
    } else if (req.method === "PUT") {
        console.log(`${req.url} 디렉터리에 ${req.method}요청이 들어왔습니다!`);
        next();
    }
});

app.route("/test")
    .get((req, res) => {
        res.send("Hello get request!");
        console.log(req.url);
    })
    .post((req, res) => {
        res.send("Hello post request!");
        console.log(req.url);
    })
    .put((req, res) => {
        res.send("Hello put request!");
        console.log(req.url);
    });

app.use("/test", ...) 미들웨어로 "/test" 요청이 발생할 때마다 req.url , req.method 객체를 사용해서 요청받은 주소 그리고 요청 메서드 형태를 출력하는 분기문을 만들었습니다. 그리고 밑에는 app.route("/test", ...) 미들웨어로 "/test"에 대한 get,post,put 메서드를 나누었습니다. 그런데 app.use()에서 req.url을 출력할때 /test가 아닌 /가 출력됩니다. /test로 출력하게 하려면 어떻게 해야 하나요?

nodejsmongodbmysqlSequelize

Câu trả lời 2

0

shere17652294님의 프로필 이미지
shere17652294
Người đặt câu hỏi

위에서 부터 GET, POST, PUT 으로 요청을 보냈습니다.

위 사진은 포스트맨이라는 프로그램으로 GET, POST, PUT 요청을 보냈습니다.

zerocho님의 프로필 이미지
zerocho
Người chia sẻ kiến thức

app.use는 req.url을 자기맘대로 바꿔버립니다. req.originalUrl 써보세요.

shere17652294님의 프로필 이미지
shere17652294
Người đặt câu hỏi

되네요 감사합니다!

0

zerocho님의 프로필 이미지
zerocho
Người chia sẻ kiến thức

음? 전체 콘솔로그 한 번 올려주세요.

Hình ảnh hồ sơ của shere17652294
shere17652294

câu hỏi đã được viết

Đặt câu hỏi