2017년도에서 확인한 결과 writeHead가 아니라 statusCode로 해서 넣어야 에러가 안나더라구요 ㅋ 아직 제가 초보라서 왜 그런진 모르겠지만 일단 2017년9월달 이후에 이 동영상을 보시는 분들은 writeHead=>statusCode 로 하심 Hello World나옵니다 ㅋ
근데 솔직히 var server = http.createServer 여기 부분 조금 뭔가 이해가 안된다..
=========================
const http = require('http')
1 - http 라는 상수명으로 http 모듈을 사용할 수 있게 되었습니다.
2 - http 모듈이 가진 여러기능중에 createServer 라는 기능도 있지요.
그걸 사용하기 위해 http.createServer 로 접근을 합니다.
3 - http.createServer 는 return 값으로 http.server 의 객체를 가집니다.
즉 var server = http.server라고 봐도 무방하며 http.server는 listen이라는 메소드가 있는데 그걸 사용하기 위함입니다.
=========================
초짜라서 이해한거랍시고 답글달았는데 이상한거 지적부탁드립니다...ㅠㅠ
http라는 노드제이에스가 제공하는 모듈을 쓰고싶어서 상수 http에 저 모듈을 사용할수있도록 객체화?맞는말인가? 느낌은 쫌 비슷한데 인스턴트 생성하는거랑.. 그렇게 해서 http에 메소드들의 접근을 할수 있게 된다.
그리고 hostname과 포트 주소를 상수로 만들어준다 왜냐면 이건 바뀌지 않을거니까..
새로운변수 server 에서 http객체안에 createServer라는 메소드에 접근을해서 hello world를 출력하게만들건데
인자로 이 메소드는 익명함수를 받아 그리고 그 익명함수의 인자는 요청과 응답을 받지.
그래서 그 내용은 글을 어떻게 출력하느냐 이런거랑 무슨 글을 출력하느냐 이런걸 써주고
그리고 서버라는객체에 리슨메소드에 접근을 해서 첫번째 인자로 포트주소 ip주소 그리고 익명함수를 선언한다
근데 솔직히 var server = http.createServer 여기 부분 조금 뭔가 이해가 안된다..
자바스크립트에선 객체가 값이기 때문에 리턴형 인자 저렇게 줄수 있는걸 알긴하는데 아직 이해가 부족한거같다.. 그런데 이보다 더 쉽게 만들수 있다는 express 플랫폼의 등장!!!
진짜 반전이다.
초보자이지만, 제가 알는 바로는 apache, nginx는 web server이고,
express는 웹 어플리케이션 프레임워크라고 알고 있습니다. 즉, express 모듈은 웹 어플리케이션을 제작 할 수 있게 만들어 주는 만능도구상자(프레임워크)라고 생각 하실 수 있을 것 같습니다.
물론, 아닐 수 있으니 흘려들으셔도 됩니다.