반응형
GET 요청에 따라 다른 응답을 주는 기능 추가
GET 요청에 따라 다른 응답을 주기 위해, 요청 URL을 검사하고 각 경로에 맞는 응답을 보내도록 코드를 작성할 수 있습니다. /
경로와 /about
경로를 처리하는 예제를 아래에 작성해 보겠습니다.
1. 서버 코드 수정
server.js
파일을 다음과 같이 수정하세요:
// 필요한 모듈을 가져옵니다.
const http = require('http');
// 서버를 생성합니다.
const server = http.createServer((req, res) => {
if (req.url === '/') {
// 루트 경로 (/)에 대한 응답
res.writeHead(200, { 'Content-Type': 'text/html' });
res.end('<h1>Hello, World!</h1>\n');
} else if (req.url === '/about') {
// /about 경로에 대한 응답
res.writeHead(200, { 'Content-Type': 'text/html' });
res.end('<h1>About Page</h1>\n');
} else {
// 기타 경로에 대한 응답 (404 Not Found)
res.writeHead(404, { 'Content-Type': 'text/html' });
res.end('<h1>404 Not Found</h1>\n');
}
});
// 서버를 특정 포트에서 대기시킵니다.
const PORT = 3000;
server.listen(PORT, () => {
console.log(`Server is running on port ${PORT}`);
});
2. 서버 실행
터미널에서 서버를 실행합니다. 기존 서버가 실행 중이라면 먼저 중지하고 다시 실행해야 합니다.
node server.js
3. 브라우저에서 확인
브라우저를 열고 다음 URL을 확인합니다:
http://localhost:3000/
-> "Hello, World!"가<h1>
태그로 감싸져 출력됩니다.http://localhost:3000/about
-> "About Page"가<h1>
태그로 감싸져 출력됩니다.http://localhost:3000/abc
와 같이 정의되지 않은 경로 -> "404 Not Found"가<h1>
태그로 감싸져 출력됩니다.
코드 설명
req.url
을 통해 요청된 URL 경로를 확인합니다.- 각 경로에 맞는 조건문 (
if
,else if
,else
)을 사용하여 응답을 처리합니다. res.writeHead
를 통해 응답 헤더를 설정하고,res.end
를 통해 응답 본문을 작성합니다.
이렇게 하면 요청된 경로에 따라 다른 응답을 줄 수 있습니다. 필요에 따라 추가 경로를 정의하고 응답을 다르게 설정할 수 있습니다.
반응형
'온라인 멘토와 함께하는 공부 > JS' 카테고리의 다른 글
[NodeJS] 학습자에게 소개하는 http.createSever 함수 (36) | 2024.05.26 |
---|---|
[NodeJS] 서버 실행에 따른 오류 해결 (38) | 2024.05.25 |
[NodeJS] '서버로서 NodeJS' 형성평가 답안 (42) | 2024.05.23 |
[NodeJS] 서버로서 NodeJS (35) | 2024.05.23 |
Node.js 장점과 단점 (41) | 2024.05.18 |