Showing
38 changed files
with
0 additions
and
202 deletions
| 1 | -// mymodule.js에 정의된 모듈로 불러서 사용하도록 처리 |
| 1 | -var inherits = require('util').inherits; | ||
| 2 | -var EventEmitter = require('events').EventEmitter; | ||
| 3 | - | ||
| 4 | - | ||
| 5 | -var Producer = function () { | ||
| 6 | - if (! (this instanceof Producer)) return new Producer(); | ||
| 7 | - | ||
| 8 | - EventEmitter.call(this); | ||
| 9 | -} | ||
| 10 | - | ||
| 11 | -// inherits를 활용하여 Producer construct가 EventEmitter Construct를 상속받도록 해야 함 | ||
| 12 | -inherits(Producer, EventEmitter); | ||
| 13 | - | ||
| 14 | -// producer의 start 함수를 재정의 해야 함 | ||
| 15 | -Producer.prototype.start = function () { | ||
| 16 | - | ||
| 17 | - // Random 스트링을 생성하여 이것을 Event에 실어서 보내야 하는 코드 작성 | ||
| 18 | - | ||
| 19 | - | ||
| 20 | -} | ||
| 21 | - | ||
| 22 | - | ||
| 23 | -module.exports = Producer; |
| 1 | -var events = require('events'); | ||
| 2 | -var eventEmitter = new events.EventEmitter(); | ||
| 3 | -var connectHandler = function connected() { | ||
| 4 | - console.log('connection successful.'); | ||
| 5 | - eventEmitter.emit('data_received'); | ||
| 6 | -} | ||
| 7 | - | ||
| 8 | -eventEmitter.on('connection', connectHandler); | ||
| 9 | - | ||
| 10 | -eventEmitter.on('data_received', function(){ | ||
| 11 | - console.log('data received successfully.'); | ||
| 12 | -}); | ||
| 13 | - | ||
| 14 | -eventEmitter.emit('connection'); | ||
| 15 | -console.log("Program Ended."); |
| 1 | -var events = require('events'); | ||
| 2 | -var eventEmitter = new events.EventEmitter(); | ||
| 3 | -var listner1 = function listner1() { | ||
| 4 | -console.log('listner1 executed.'); | ||
| 5 | -} | ||
| 6 | -var listner2 = function listner2() { | ||
| 7 | -console.log('listner2 executed.'); | ||
| 8 | -} | ||
| 9 | - | ||
| 10 | -eventEmitter.addListener('connection', listner1); | ||
| 11 | -eventEmitter.on('connection', listner2); | ||
| 12 | -var eventListeners = require('events').EventEmitter.listenerCount(eventEmitter,'connection'); | ||
| 13 | -console.log(eventListeners + " Listner(s) listening to connection event"); | ||
| 14 | - | ||
| 15 | -eventEmitter.emit('connection'); | ||
| 16 | -eventEmitter.removeListener('connection', listner1); | ||
| 17 | -console.log("Listner1 will not listen now."); | ||
| 18 | - | ||
| 19 | -eventEmitter.emit('connection'); | ||
| 20 | -eventListeners = require('events').EventEmitter.listenerCount(eventEmitter,'connection'); | ||
| 21 | -console.log(eventListeners + " Listner(s) listening to connection event"); | ||
| 22 | -console.log("Program Ended."); |
| 1 | -var express = require('express'); | ||
| 2 | -var app = express(); | ||
| 3 | -var bodyParser = require('body-parser'); | ||
| 4 | - | ||
| 5 | -app.use(bodyParser.urlencoded({ extended: false })); | ||
| 6 | -app.use(bodyParser.json()); | ||
| 7 | - | ||
| 8 | - | ||
| 9 | -var books = new Array(); | ||
| 10 | - | ||
| 11 | -app.get('/book/:bookId', function (req, res) { | ||
| 12 | - var bookId = req.params.bookId; | ||
| 13 | - console.log(books[bookId]); | ||
| 14 | - res.send(books[bookId]); | ||
| 15 | -}); | ||
| 16 | - | ||
| 17 | -/* | ||
| 18 | -{ | ||
| 19 | - "id" : 2, | ||
| 20 | - "name" : "book2", | ||
| 21 | - "price" : 2000, | ||
| 22 | - "author" : "jin" | ||
| 23 | -} | ||
| 24 | -*/ | ||
| 25 | -app.post('/book', function (req, res) { | ||
| 26 | - // Create book information | ||
| 27 | - books[req.body.id] = [req.body.id, req.body.name, req.body.price, req.body.author]; | ||
| 28 | - res.send(books[req.body.id]); | ||
| 29 | -}) | ||
| 30 | - | ||
| 31 | -app.put('/book/:bookId', function (req, res) { | ||
| 32 | - // Update book information | ||
| 33 | - | ||
| 34 | -}) | ||
| 35 | - | ||
| 36 | - | ||
| 37 | -app.delete('/book/:bookId', function (req, res) { | ||
| 38 | - // Delete book information | ||
| 39 | - | ||
| 40 | -}) | ||
| 41 | -var server = app.listen(80); | ||
| 42 | - console.log(books); |
| 1 | -{ | ||
| 2 | - "name": "assignment01", | ||
| 3 | - "version": "1.0.0", | ||
| 4 | - "description": "", | ||
| 5 | - "main": "index.js", | ||
| 6 | - "scripts": { | ||
| 7 | - "test": "echo \"Error: no test specified\" && exit 1" | ||
| 8 | - }, | ||
| 9 | - "author": "", | ||
| 10 | - "license": "ISC", | ||
| 11 | - "dependencies": { | ||
| 12 | - "body-parser": "^1.17.1", | ||
| 13 | - "express": "^4.15.2" | ||
| 14 | - } | ||
| 15 | -} |
| 1 | -var express = require('express'); | ||
| 2 | -var app = express(); | ||
| 3 | -var bodyParser = require('body-parser'); | ||
| 4 | -var session = require('express-session') | ||
| 5 | - | ||
| 6 | -app.use(session({ secret: 'keyboard cat', cookie: { maxAge: 60000 }})) | ||
| 7 | -app.use(bodyParser.urlencoded({ extended: false })); | ||
| 8 | -app.use(bodyParser.json()); | ||
| 9 | - | ||
| 10 | - | ||
| 11 | -var users = new Array(); | ||
| 12 | -var userId = 'test'; | ||
| 13 | -var userPass = '1234'; | ||
| 14 | - | ||
| 15 | -app.get('/login/:userId/password/:password', function (req, res) { | ||
| 16 | - // users 배열에서 찾도록 수정해야 함 | ||
| 17 | - // admin 여부를 지원할 수 있도록 수정해야 함 | ||
| 18 | - if (req.params.userId == userId && req.params.password == userPass) { | ||
| 19 | - req.session.userId = userId; | ||
| 20 | - } | ||
| 21 | - res.send("Login"); | ||
| 22 | -}); | ||
| 23 | - | ||
| 24 | -app.get('/logout/:userId', function (req, res) { | ||
| 25 | - // Logout | ||
| 26 | - req.session.userId = null; | ||
| 27 | - res.send("LogOut"); | ||
| 28 | - | ||
| 29 | -}); | ||
| 30 | - | ||
| 31 | -var auth = function (req, res, next) { | ||
| 32 | - // Session Check | ||
| 33 | - if (req.session.userId != null) | ||
| 34 | - next(); | ||
| 35 | - else | ||
| 36 | - res.send("Error"); | ||
| 37 | - | ||
| 38 | -}; | ||
| 39 | -app.get('/user/:userId', auth,function (req, res) { | ||
| 40 | - // get User Information | ||
| 41 | - res.send("OK"); | ||
| 42 | -}); | ||
| 43 | - | ||
| 44 | -// 사용자 추가 시에 admin 여부도 추가해야 함 | ||
| 45 | - | ||
| 46 | -var server = app.listen(80); |
| 1 | -{ | ||
| 2 | - "name": "assignment02", | ||
| 3 | - "version": "1.0.0", | ||
| 4 | - "description": "", | ||
| 5 | - "main": "index.js", | ||
| 6 | - "scripts": { | ||
| 7 | - "test": "echo \"Error: no test specified\" && exit 1" | ||
| 8 | - }, | ||
| 9 | - "author": "", | ||
| 10 | - "license": "ISC", | ||
| 11 | - "dependencies": { | ||
| 12 | - "body-parser": "^1.17.1", | ||
| 13 | - "express": "^4.15.2", | ||
| 14 | - "express-session": "^1.15.2" | ||
| 15 | - } | ||
| 16 | -} |
-
Please register or login to post a comment