목차 일부
머리말 ... 4
서문 ... 6
CHAPTER 01 Node.js 개요
1.1 Node.js 배경사 ... 23
1.2 이벤트 기반의 비동기 방식의 의미 ... 25
1.3 Node.js 장점과 단점 ... 27
1.4 Node.js를 사용한 애플리케이션 ... 28
CHAPTER 02 Node.js 개발 환경 구축
2.1 윈도...
더보기
목차 전체
머리말 ... 4
서문 ... 6
CHAPTER 01 Node.js 개요
1.1 Node.js 배경사 ... 23
1.2 이벤트 기반의 비동기 방식의 의미 ... 25
1.3 Node.js 장점과 단점 ... 27
1.4 Node.js를 사용한 애플리케이션 ... 28
CHAPTER 02 Node.js 개발 환경 구축
2.1 윈도 설치 ... 32
2.2 우분투 설치 ... 34
2.3 맥 설치 ... 36
2.4 첫 번째 Node.js 애플리케이션 ... 37
2.5 두 번째 Node.js 애플리케이션 ... 38
CHAPTER 03 Node.js의 전역 객체
3.1 전역 변수 ... 41
3.2 console 객체 ... 43
3.3 process 객체 ... 47
3.4 exports 객체와 모듈 ... 49
CHAPTER 04 기본 내장 모듈
4.1 os 모듈 ... 54
4.2 url 모듈 ... 56
4.3 Query String 모듈 ... 58
4.4 util 모듈 ... 59
4.5 File System 모듈 ... 61
파일 읽기 ... 62
파일 쓰기 ... 63
예외 처리 ... 64
CHAPTER 05 이벤트
5.1 이벤트 연결 ... 67
5.2 이벤트 연결 개수 제한 ... 71
5.3 이벤트 제거 ... 72
5.3 이벤트 강제 발생 ... 75
5.3 이벤트 생성 ... 77
CHAPTER 06 http 모듈
6.1 요청과 응답 ... 81
6.2 server 객체 ... 86
6.3 response 객체 ... 89
File system 모듈을 사용한 HTML 페이지 제공 ... 90
이미지와 음악 파일 제공 ... 92
쿠키 생성 ... 95
페이지 강제 이동 ... 98
6.4 request 객체 ... 101
url 속성을 사용한 페이지 구분 ... 101
method 속성을 사용한 페이지 구분 ... 104
GET 요청 매개 변수 추출 ... 105
POST 요청 매개 변수 추출 ... 106
쿠키 추출 ... 109
CHAPTER 07 외부 웹 모듈
7.1 EJS 모듈 ... 114
EJS 모듈의 메서드 ... 115
EJS 파일 형식 ... 117
데이터 전달 ... 119
7.2 Jade 모듈 ... 121
Jade 모듈의 메서드 ... 122
HAML 파일 형식 ... 124
Jade 파일 형식 ... 128
7.3 connect 모듈 기본 ... 130
7.4 connect 모듈 미들웨어 기본 ... 134
Query 미들웨어 ... 135
Logger 미들웨어 ... 136
Error Handler 미들웨어 ... 139
Static 미들웨어 ... 142
7.5 connect 모듈 - Router 미들웨어 ... 144
7.6 connect 모듈 - Cookie Parser 미들웨어 ... 148
7.7 connect 모듈 - Body Parser 미들웨어 ... 149
7.8 connect 모듈 - Session 미들웨어 ... 154
CHAPTER 08 MySQL 데이터베이스
8.1 MySQL 설치 ... 159
윈도 설치 ... 160
우분투 설치 ... 161
맥 설치 ... 161
8.2 MySQL 기본 ... 162
데이터베이스 생성 ... 163
테이블 생성 ... 163
데이터 저장 ... 165
데이터 조회 ... 166
조건 검사 ... 167
데이터 정렬 ... 170
특정 위치에 있는 데이터 선택 ... 171
데이터 수정 ... 173
데이터 삭제 ... 174
8.3 MySQL 모듈 기본 ... 175
8.4 MySQL 모듈을 사용한 CRUD 구현 ... 180
데이터 표시 ... 182
데이터 삭제 ... 184
데이터 추가 ... 185
데이터 수정 ... 188
최종 코드 ... 190
CHAPTER 09 Express 프레임워크
9.1 Express 프레임워크 설치 ... 196
9.2 프로젝트 설정 ... 198
9.3 Express 프레임워크 기본 ... 199
서버 생성 ... 201
미들웨어 설정 ... 201
실행 환경 설정 ... 203
페이지 라우트 ... 205
서버 실행 ... 205
9.4 페이지 라우트 ... 206
페이지 라우트 기본 ... 206
모듈을 사용한 페이지 라우트 ... 207
단일 페이지 렌더링 ... 208
폴더를 사용한 페이지 분류 ... 210
9.5 레이아웃 페이지 ... 212
9.6 response 객체 ... 214
페이지 강제 이동 ... 215
쿠키 생성 ... 216
9.7 request 객체 ... 219
요청 헤더의 속성 추출 ... 219
요청 매개 변수 추출 ... 220
CHAPTER 10 socket.io 모듈
10.1 socket.io 모듈 기본 ... 224
웹 소켓 서버 ... 225
웹 소켓 클라이언트 ... 226
웹 소켓 이벤트 ... 228
10.2 소켓 통신의 종류 ... 232
Public 통신 ... 233
Broadcast 통신 ... 234
Private 통신 ... 235
10.3 클라이언트 정보 저장 ... 237
10.4 방 생성 ... 242
10.5 웹 채팅 프로그램 ... 246
웹 채팅 서버 ... 247
웹 채팅 클라이언트 ... 249
웹 채팅 모바일 클라이언트 ... 253
남은 과제 ... 255
CHAPTER 11 영화 예매
11.1 프로젝트 개요 ... 257
11.2 프로젝트 생성 ... 258
11.3 서버 전체 코드 ... 259
11.4 서버 구현 ... 260
11.5 클라이언트 페이지 전체 코드 ... 263
11.6 클라이언트 페이지 구현 ... 265
11.7 정리 및 남은 과제 ... 270
CHAPTER 12 실시간 물건 구매
12.1 프로젝트 개요 ... 271
12.2 프로젝트 생성 ... 272
12.3 서버 전체 코드 ... 273
12.4 서버 구현 ... 276
12.5 클라이언트 페이지 전체 코드 ... 281
12.6 클라이언트 페이지 구현 ... 283
12.7 정리 및 남은 과제 ... 288
CHAPTER 13 실시간 위치 추적
13.1 프로젝트 개요 ... 289
13.2 프로젝트 생성 ... 291
13.3 데이터베이스 구성 ... 291
13.4 서버 전체 코드 ... 292
13.4 서버 구현 ... 294
13.5 클라이언트 페이지 전체 코드 ... 297
13.5 Tracker 페이지 구현 ... 301
13.6 Observer 페이지 구현 ... 305
13.7 정리 및 남은 과제 ... 309
CHAPTER 14 실시간 온라인 그림판
14.1 프로젝트 개요 ... 311
14.2 프로젝트 생성 ... 313
14.3 서버 전체 코드 ... 315
14.4 서버 구현 ... 317
14.5 클라이언트 페이지 전체 코드 ... 320
14.6 로비 페이지 구현 ... 324
14.7 캔버스 페이지 구현 ... 328
14.8 정리 및 남은 과제 ... 334
부록 A. http 모듈과 net 모듈
A.1 http 모듈을 사용한 웹 페이지 다운로드 ... 335
A.2 net 모듈을 사용한 TCP 서버 ... 338
A.3 net 모듈을 사용한 TCP 클라이언트 ... 340
부록 B. 중요한 추가 모듈
B.1 파일 처리 - Async 모듈 (1) ... 343
B.2 코드 흐름 관리 - Async 모듈 (2) ... 348
B.3 멀티 코어 처리 - cluster 모듈 ... 352
부록 C. 바이너리 모듈
C.1 바이너리 모듈 작성 ... 359
C.2 바이너리 모듈 빌드 ... 361
C.3 바이너리 모듈 사용 ... 363
부록 D. Mongo DB
D.1 Mongo DB 설치 ... 365
윈도 설치 ... 366
우분투 설치 ... 367
맥 설치 ... 368
D.2 Mongo DB 기본 ... 369
데이터베이스와 컬렉션 ... 369
데이터 저장 ... 370
데이터 검색 ... 371
데이터 정렬 ... 373
특정 위치에 있는 데이터 선택 ... 374
데이터 수정 ... 375
데이터 삭제 ... 376
D.3 mongojs 모듈 ... 376
찾아보기 ... 379
더보기 닫기