You can make anything
by writing

C.S.Lewis

by 훈오빵 Nov 21. 2023

Node.js 기본카지노 게임 사이트 만들기(1)

const 카지노 게임 사이트 = require("카지노 게임 사이트");
let count = 0;
const server = 카지노 게임 사이트.createServer((req, res) = {
log(count);
res.statusCode = 200;
res.setHeader("Content-Type", "text/plain");
res.write("hello\n");
setTimeout(() = {
res.end("Node.js");
}, 2000);
});

function log(count) {
console.log((count += 1));
}

server.listen(8000);


1) const 카지노 게임 사이트 = require("카지노 게임 사이트");

- require()는 모듈을 읽어오는 함수. http 모듈을 불러와서 http 변수에 할당했음. 모듈명과 변수명은 달라도 무관하나 가능하면 같도록 하는 것이 관행.


2) const server = 카지노 게임 사이트.createServer(callback);

- createServer()는 카지노 게임 사이트 인스턴스를 만드는 함수. 인수로는 콜백 함수를 받음. 콜백함수에서는 http 카지노 게임 사이트로 요청이 들어오면 해당 요청을 처리할 함수를 설정하는데, 인수로 요청처리에 사용할 req(request)와 res(response) 객첵을 받음.


3) log(count);

- 전역 변수 count를 사용해 요청에 대한 로그를 간단하게 남김.


4) res.statusCode = 200;

- 요청에 대한 상태코드를 200으로 설정. 카지노 게임 사이트 프로토콜에서 200은 "Sucess"의 의미.

- 주요 status code

200, 301, 304, 400, 403, 404, 405, 408, 500, 501, 502, 503


5) res.setHeader("Content-Type", "text/plain");

- 카지노 게임 사이트는 요청/응답에 대한 부가 정보를 header에 설정할 수 있음.

- 카지노 게임 사이트 Protocol header field definition

https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html


6) res.write("hello\n")

- 응답으로 "hello\n"을 보내줌.


7) setTimeout(() = {res.end("Node.js")}, 2000)

- setTimeout()은 콜백함수와 숫자(밀리초)를 인수로 받으며, 해당 시간이 경과한 후 콜백 함수를 실행함.

- setTimeout(), setInterval()과 같은 타이머 함수는 libuv에서 제공하는 기능을 사용하며, 이벤트루프에서 콜 스택을 모니터링하면서 실행할 시점을 정함.


8) server.listen(8000);

- 사용할 port를 8000으로 지정.

- IP가 생략되었으므로 기본값인 localhost 혹은 127.0.0.1로 카지노 게임 사이트에 접근 가능

- port 번호는 16비트로 이뤄져 있음. 0~1023번 포트를 사용하려면 root 권한 필요. 반면 1024~49151 구간은 기관이나 사업자들을 위해서 IANA(인터넷 할당번호 관리기관)에 등록되어 있으나, 수퍼유저 권한 없이도 임의로 사용 가능. 49152~65535 구간은 일반 사용자들이 자유롭게 사용 가능


브런치는 최신 브라우저에 최적화 되어있습니다.