Node.js

Basic GET request

MoZZANG 2022. 6. 3. 14:17
서버를 띄우기 위해 작성할 기본 template

설치했던 express라이브러리 사용법에 의하면

 

이렇게 쓰면 서버가 뜬다고 한다.

해석해보자면 첫 두줄은 express 라이브러리 첨부와 사용,

밑에 app.listen()은 원하는 포트에 서버를 오픈하는 문법이라고 보면된다.

 

listen() 함수 안엔 두개의 파라미터가 필요하다.

listen(서버를 오픈할 포트번호, function(){서버 오픈시 실행할 코드})

이렇게 사용하면 된다.

 

위 코드를 잘 작성하고 New Terminal 눌러 터미널을 켜서 node server.js를 입력하고 enter를 누르면 서버가 뜬다.

위와 같이 listening on 포트번호가 뜨면 서버가 열린것이다.

그리고 브라우저 주소창에 localhost: 포트번호를 치고 접속하면  확인가능하다. 

포트번호는 자기마음대로 바꿔도 된다. 

 


 

근데 포트가 뭐임?

 

우리의 컴퓨터는 항상 외부 컴퓨터와 통신할 수 있게 설계되어있다.

랜선을 꽂거나 와이파이를 켜거나 하면 다른 사람이 여러분 컴퓨터로 접속을 요청할 수도 있다. 

컴퓨터는 외부와 통신할 수 있는 구멍이 60000개 정도 있는데 이걸 '포트'라고 부릅니다. 

평상시엔 막혀있는데, 우리가 외부 컴퓨터 접속을 허가하려면 포트를 열어야한다.

 

이와 비슷하게 우리는 무작위로 하나 고른 8080번째 포트를 사용해서 서버를 띄운 것일 뿐이다.

이제 외부 컴퓨터가 여러분 아이피 주소:8080이라고 입력하면 여러분 컴퓨터로 들어올 수 있는 것이다.

 

 


 

GET요청을 처리하는 기계(?)를 만들어보자

서버는 요청을 처리하는 기계라고 했다.

그럼 요청을 어떻게 하냐면, 바로 브라우저를 켜서 주소창에 URL을 입력하면 된다. 그게 가장 쉬운 요청방법이다.

이 요청은 전문용어로 GET 요청이라고 합니다. 간단하게 주소창에 URL을 입력해서 요청할 수 있는 것이고.

 

지금부터 뭘 만들건지 네이버로 예를 들면 .. 

swindow.naver.com/pet 으로 접속하면 펫용품 쇼핑페이지가 뜬다.

swindow.naver.com/beauty 로 접속하면 뷰티용품 쇼핑페이지가 뜬다.

우리도 이거랑 매우 유사하게 만들어보자.

 

우리는 우리서버의 /pet 경로로 접속하면 '펫용품 쇼핑할 수 있는 페이지입니다.' 라는 안내메세지를 띄워주는 서버를 만들어보도록 하자.

 

이렇게 server.js 하단에 추가하면된다. 

그럼 브라우저 켜서 localhost:포트번호/pet 이라고 접속하면 펫용품 쇼핑할 수 있는 페이지라는 문구가 뜰 것이다.

(터미널에서 ctrl + c 누르시고 서버를 끈 다음 node server.js 입력해서 서버를 재시작해야한다.)

 

위 코드를 씹어보면

get()이라는 함수의 첫번째 인자로 경로를, 두번째 인자로 해당 경로로 접속할 경우 실행될 callBack 함수를 넣어준다.

 

callBack함수에는 첫번째 인자로 요청을 받을 때 정보가 저장되는 변수, 보통 요청을 의미하는 request의 약자인 req를 많이 쓴다.

 

두번째 인자는 요청을 받았을 때 우리가 응답할 때 사용할 응답용 변수, 보통 응답을 의미하는 response의 약자인 resp를 많이 쓴다.

 


 

위와같이 경로를 추가해주면 서버를 다시 껐다가 켜야 적용이된다. 서버를 끄는 방법은 서버가 실행되고 있는 상태에서

터미널에서 Crtl + c를 눌러주면 아래와 같이 서버가 닫힌다.

경로를 업데이트 할 때마다 서버를 껐다 키는것은 정말 번거롭다. 이럴때는 자동으로 서버에 적용해주는 라이브러리를 사용하면 좋다.

 

위와같이 터미널에 입력해주고 nodemon을 설치하도록 하자.

 

 

 

 

<출처 : 코딩애플 : Node.js, MongoDB로 2시간 만에 빠르게 웹서비스 만들기>