티스토리 뷰

server.js

설명은 앞에서도 많이 했으니..

1. app이라는 변수로 서버를 샐행하고 handler라는 함수를 동작시킨다.

2. handler에는

__dirname은 전역변수로 현재 디렉토리를 반환함.

즉 현재 서버가 실행되고 있는 루트의 client.html 파일을 찾아서 읽고 그안의 내용을 본문에 써준다.

즉.. 페이지 이동과 비슷.(내가 이해하고 있는것이 맞음?)

3. 

'news' 라는 변수로 {hello : 'world'}라는 json형태의 데이터를 전송함.


client.html

서버에서 읽는 파일.

1. script 소스 링크는 신경쓸 필요 없음. node_modules 안의 파일을 지가 알아서 찾아 연결함.

(단 node_modules 안에 파일은 존재해야함... 다른곳에 위치한 파일을 링크걸려면 ./ 혹은 / 로 시작하는 경로를 명시)

2. 서버에서 'news'라는 변수로 데이터를 전송하므로 'news'로 데이터를 받아서 console.log(data);로 찍는다.

3. socket.emit(); 은 다시 서버로 데이터를 전송함.


하지만!!!!

이소스 그대로 서버를 실행하면


Server Start!


events.js:72

        throw er; // Unhandled 'error' event

              ^

Error: listen EACCES

    at errnoException (net.js:904:11)

    at Server._listen2 (net.js:1023:19)

    at listen (net.js:1064:10)

    at Server.listen (net.js:1138:5)

    at Object.<anonymous> (D:\03_private\[140728] NodeJs\ChatPractice02\chat01\server.js:5:5)

    at Module._compile (module.js:456:26)

    at Object.Module._extensions..js (module.js:474:10)

    at Module.load (module.js:356:32)

    at Function.Module._load (module.js:312:12)

    at Function.Module.runMain (module.js:497:10)


이런 에러를 만나는 분들이 계실수도 있을게다...




아하하하... 아하하하...

처음 소스를 구하고 실행했을때 나왔던 에러인데 일주일이 지난 지금에서야...

이 에러때문에 Socket.io를 처음부터 공부했다는.. 무려 일주일이나........

하지만 오늘도 같은 에러가 뜸...

열받아서 걍 구글링...




아하하하하~~~~~

일주일이나 삽질했지만 난 틀리지 않았어~

입가에 미소를 띄우지만 마음은 흔들리지... 않았어...




이럴땐.. 당황하지 않고~

app.listen(80)의 포트를 8080혹은 다른 포트로 지정해주면~~~






댓글
  • 프로필사진 지나가던이 (주인장은 필요없겠지만 구글링으로 검색하는 다른 이들을 위하여 사족을...) 서버에서 포트번호로 1024 이하의 값을 사용하려면 특별한 권한이 필요합니다. (리눅스의 경우 root) 일반적인 서버프로그램들이 사용하는 포트 번호들이 이에 해당하기 때문이라고 할 수 있습니다. (보다 더 자세한 이유는 모르니까 생략) 2015.11.10 16:53
댓글쓰기 폼
공지사항
Total
49,993
Today
30
Yesterday
25
링크
«   2020/09   »
    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      
글 보관함