728x90

안드로이드 채팅 기능을 구현해보고 싶어 구글링 해보니 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');
var app = express();

app.get('/', function (req, res) {
  res.send('Hello World!');
});

app.listen(3000, function () {
  console.log('Example app listening on port 3000!');
});


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.

블로그 이미지

Link2Me

,