안드로이드 채팅 기능을 구현해보고 싶어 구글링 해보니 Firebase 기반으로 만든 채팅 앱 예제가 있다.
하지만 Firebase 기반은 구글 서버에 저장되므로 보안성을 요구하는 곳에서는 사용할 수 없을 거 같다.
그래서 호스팅 서버에서 구현할 수 있는 걸 찾아보니 nodejs 와 socket.io 를 이용하면 좋을 거 같아서 공부중이다.
동영상 강좌는 생활코딩 node.js https://opentutorials.org/course/2136 와 Inflearn 사이트에 있는 https://www.inflearn.com/course/node-js-%eb%85%b8%eb%93%9c%ec%a0%9c%ec%9d%b4%ec%97%90%ec%8a%a4-%ea%b0%95%ec%a2%8c/ 를 듣고 있는 중이다.
Do It Node.js 프로그래밍 책을 보고 있는데 네이버지식인 자료중에 <Node.js 프로그래밍: O'reilly / 한빛출판사> 책을 꼭 보라고 권장하고 있어서 node.js 를 깊게 공부하게 된다면 이 책도 구입 대상이다.
하지만 그럴 일이 있을지 모르겠다. Web 개발은 PHP 로 충분할 거 같고, PHP도 morden PHP 프레임웍을 배워야 하고...
Inflearn 사이트에서 하는 강좌는 WebStorm 툴 기반으로 연습해 볼 수 있는 방법으로 강좌를 진행한다.
WebStorm 툴은 Android Studio 툴을 만든 회사에서 만든 툴이라 그런지 사용방법이 매우 유사하고 편하다.
WebStorm 은 유료 툴로 1년 사용료가 129 달러라고 나온다. 30일 버전으로 사용해보고 있는 중이다.
윈도우 기반에서 편리하게 node.js 동작되는 걸 확인해보는 툴은 무료 툴도 있으니 체험기간동안만 이용해 보련다.
내가 강좌를 듣고 배워서 운영체제는 리눅스 환경이라 express 설치하는 방법이 별로 도움되지 않더라.
Express : Node.js를 위한 빠르고 간결한 개방 웹 프레임워크
http://expressjs.com/ko/ 에 설치방법이 나온다.
1. 새로운 폴더를 생성한다.
/home/nodejs 를 폴더를 생성했다.
express 를 테스트할 폴더를 /home/nodejs/express_app를 생성한다.
2. 생성한 폴더로 이동하여 npm init 명령을 이용하여 애플리케이션에 대한 package.json 파일을 작성한다.
cd /home/nodejs/express_app
npm init
entry point: (index.js) app.js 로 적어줬다.
3. npm install express --save
현재 폴더 하단에 node_modules 폴더가 생성되고 관련 패키지 파일이 생성된다.
※ node.js 파일 설치는 /usr/local/nodejs 라는 폴더에 설치하고 설정을 한 상태라서 현재 설치되는 폴더와는 다르다.
4. app.js 파일을 생성한다.
http://expressjs.com/ko/starter/hello-world.html 에 나온 예제를 그대로 복사하여 붙여넣기 해본다.
var express = require('express'); |
5. node app.js 를 하여 실행하고 나서
클라이언트 웹 브라우저에서 http://weburl:3000 으로 접속을 시도하면 화면에 Hello world! 를 보여주면
기본적인 준비가 된 상태다.
6. 추가 설치 사항
npm install express-error-handler --save
npm install cookie-parser --save
npm install express-session --save
npm install multer --save
npm install ws --save
npm install socket.io --save
npm install jquery --save
Express는 HTTP 메소드에 해당하는 다음과 같은 라우팅 메소드를 지원한다.
get, post, put, head, delete, options, trace, copy, lock, mkcol, move, purge, propfind, proppatch, unlock, report, mkactivity, checkout, merge, m-search, notify, subscribe, unsubscribe, patch, search 및 connect.
'node.js' 카테고리의 다른 글
Node.js 파일 업로드 기능 만들기 (0) | 2018.10.15 |
---|---|
Node.js 서버 chat.js 코드와 Web Chat 클라이언트 코드 (0) | 2018.09.24 |
[Node.js] socket.io 와 Express 모듈을 이용한 간단 채팅 서버 구현 (0) | 2018.09.13 |
[node.js] 간단 웹서버 구축 테스트 (1) | 2017.08.11 |
CentOS6 node.js 서버 환경 구축 (0) | 2017.08.11 |