Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

체대출신 코더의 개발자 성장기

TIL-서버 본문

카테고리 없음

TIL-서버

미토콘크리트 2019. 6. 18. 20:04

1)OPTION METHOD

옵션 메소드는 서버와 클라이언트가 서로 통신을 할 수 있도록 돕는 오작교이다.

클라이언트가 서버에 원하는 메소드를 보내면, 서버는 "내가 허용할 메소드는 이거랑 이거랑 이거밖에 없어" 라고 브라우저에게 알려준다.

브라우저는 서버에서 얻은 대답을 토대로 클라이언트에서 서버가 허용한 메소드를 보내면, 서버에서 데이터를 가져와 클라이언트에게 보내주고

반대로 허용하지않는 메소드를 보내면 서버까지 가지 않고, 브라우저가  바로 클라이언트에게 405 에러 메시지(서버는 이 메소드 안좋아해 보내지 마)를 출력한다.

 

2)http 메소드

require해서 사용할수있고, 데이터를 입력받을 서버를 createServer을 이용해서 생성할 수 있다.

createServer으로 서버를 만들고 이것은 매개변수로 request와 response 두가지를 받는데

request는 서버로 들어온 데이터들의 객체로서, 서버에서는 클라이언트의 요청이 여기에 해당되며 ,반대로 클라이언트에서는 이 객체로 서버의 응답을 받는다.

response는 말그대로 응답으로, 클라이언트의 요청에 대한 응답을 정형화된 객체로 보낸다.(바로 윗줄에서 후자에 속하는 부분)

 

-request 

request.method ==> 입력받은 요청메소드가 무엇인지 알수있다

request.url ==> 요청이 전송된 url이 어디인지 알 수 있다.

 

request객체는 실제로 봤지만 매우 방대한 정보가 들어있기 때문에 dot으로 접근하기 힘들다.

on메소드는 내부의 이벤트를 이용해서 원하는 데이터에 쉽게 접근 할 수 있게 만들어주는 것 같다.

 

resquest.on("data",func)  

요청된 데이터를 Buffer의 형태로 가져온다.  데이터는 컴퓨터언어로 조각조각 부저져있으니, 하나로 합쳐주는 방법이 필요하다.

 

resquest.on("end",func)

"data"이벤트로 받아온 데이터를 컴퓨터에서 쓸수 있도록 만들어 준다.

 

-response

하나로 합친 데이터를 다시 클라이언트로 보내주는 기능이다.

 

response.writeHead(반응코드,헤더)

명시적으로 헤더를 작성해 두번째 인자로 작성된 response객체를 첫번째 인자의 반응코드로서 보내줄 준비를 시킵니다.

 

response.write(데이터)

클라이언트에 보낼 메시지 

 

response.end(마지막비트에 담아 보낼 데이터)

클라이언트에 보낼 마지막 비트를 사용자 설정해서 보낸다

 

3) Arrow Function

es6문법으로서 this를 어떻게 사용되었는지보다는 어디서 사용되었는지에 포커싱을 한다.

사용이 조금 더 명시적이다.

매개변수가 없는 함수는 괄호가 있어야한다.

()=> { expression }

 

매개변수가 하나뿐인 경우에는 소괄호는 선택적으로 작성해주면 된다.

(props) => { expression }

props => { expression }

 

매개변수가 여러 개 일때는 인자가 들어갈 곳의 중괄호의 사용은 선택사항이다..

 

피곤하니.. 나중에 공부해보자 ㅜㅜ

 

Comments