Page 22 -
P. 22

Note    HTTP 상태 코드

                          res.writeHead에 첫 번째 인자로 성공을 알리는 상태 코드인 200을 넣어주었는데, 브라우저는 서버에서 보내주는
                          상태 코드를 보고 요청이 성공했는지 실패했는지를 판단합니다. 대표적인 상태 코드들을 알아보겠습니다.
                                                                                                          4
                          • 2XX: 성공을 알리는 상태 코드입니다. 대표적으로 200(성공), 201(작성됨)이 많이 사용됩니다.
                          •   3XX: 리다이렉션(다른 페이지로 이동)을 알리는 상태 코드입니다. 어떤 주소를 입력했는데 다른 주소의 페이지로
                            넘어갈 때 이 코드가 사용됩니다. 대표적으로 301(영구 이동), 302(임시 이동)가 있습니다.
                          •   4XX: 요청 오류를 나타냅니다. 요청 자체에 오류가 있을 때 표시됩니다. 대표적으로 401(권한 없음), 403(금지됨),       http 모듈로 웹 서버 만들기
                            404(찾을 수 없음)가 있습니다.
                          •   5XX: 서버 오류를 나타냅니다. 요청은 제대로 왔지만 서버에 오류가 생겼을 때 발생합니다. 이 오류가 뜨지 않게
                            주의해서 프로그래밍해야 합니다. 이 오류를 클라이언트로 res.writeHead로 직접 보내는 경우는 없고, 예기치
                            못한 에러 발생 시 서버가 알아서 5XX대 코드를 보냅니다.  500(내부 서버 오류), 502(불량 게이트웨이), 503(서
                            비스를 사용할 수 없음)이 자주 사용됩니다.




                          Note    헤더와 본문
                          잠깐 헤더와 본문에 대해 알아보는 시간을 가져보겠습니다.

                             그림 4-8 요청과 응답의 형태
                                    HTTP Request/Response
                                        HTTP Header

                                         HTTP Body
                                                                              General Header
                             <html>
                                 <head>                                      Request/Response
                                 <title>Clean Tutorials|/title>                  Header
                                 <link rel='stylesheet' href='link'>
                                                                               Entity Header
                                 |/head>
                                 <body>
                                     <h1>Heading|/h1>
                             ||.
                                 |/body>
                             |/html>


                          요청과 응답은 모두 헤더와 본문을 가지고 있습니다. 헤더는 요청 또는 응답에 대한 정보를 가지고 있는 곳이고, 본문
                          은 서버와 클라이언트 간에 주고받을 실제 데이터를 담아두는 공간입니다. 쿠키는 부가적인 정보이므로 헤더에 저장
                          합니다.






                                                                                                      141




         node_06.indd   141                                                                     2018-07-20   오전 10:26:43
   17   18   19   20   21   22   23