지난번에 초기 설정에 이어서 서버를 실행시키는 과정을 간다하게 작성해보려한다.
파일 상단에서 http 모듈과 타입으로 사용할 세가지 타입을 import 한다.
import http, { IncomingMessage, Server, ServerResponse } from "http";
임의의 상수에 호스트 이름과 port번호를 할당한다.
const hostname: string = "127.0.0.1";
const port: number = 5000;
http.createServer 함수를 사용하여 서버객체를 생성한다.
서버 객체는 들어오는 HTTP 요청을 처리하는 콜백함수를 인수로 받는다.
콜백 함수는 두 개의 인수를 전달 받는다.
const server: Server = http.createServer(
(request: IncomingMessage, response: ServerResponse) => {
response.statusCode = 200;
response.setHeader("Content-Type", "text/html");
response.write("<html><body><h1>Hello, World!</h1></body></html>");
response.end();
}
);
각 라인의 의미!
server객체의 listen 메서드를 호출하여 서버를 시작한다.
세 가지 인수를 제공한다.
server.listen(port, hostname, () => {
console.log(Node JS Server at http://${hostname}:${port});
});
import http, { IncomingMessage, Server, ServerResponse } from "http";
const hostname: string = "127.0.0.1";
const port: number = 5000;
const server: Server = http.createServer(
(request: IncomingMessage, response: ServerResponse) => {
response.statusCode = 200;
response.setHeader("Content-Type", "text/html");
response.write("<html><body><h1>Hello, World!</h1></body></html>");
response.end();
}
);
server.listen(port, hostname, () => {
console.log(`Node JS Server at http://${hostname}:${port}`);
});

실제 위에 코드를 기반으로 서버를 실행한 결과이고 도메인 주소로 들어가면 Hello World라는 텍스트를 확인할 수 있다.
저의 경우에는 api 요청 테스트를 쉽게 할 수 있는 insomnia를 사용하여 확인했습니다.
