backend ia: nodejs/express - mit...

40
NodeJS/Express 6.148 David Wong

Upload: ngotram

Post on 16-Sep-2018

231 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

NodeJS/Express

6.148 • David Wong

Page 2: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

http://nodejs.org

Page 3: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

A Quick Experiment

Page 4: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

What is

Page 5: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

What is NodeJS

• Platform built on Google’s V8 Javascript engine

• Fast and scalable • Event-driven and non-blocking

Page 6: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

NodeJS is Javascript

Page 7: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

NodeJS is Javascript (on the server!)

Page 8: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Client Server

Page 9: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Client Server

HTTP Request

Page 10: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Client Server (NodeJS)

HTTP Request

Page 11: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Client Server

HTML/CSS and client-side Javascript

Server (NodeJS)

HTTP Request

Page 12: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

client-side Javascript

≠ server-side Javascript

Page 13: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 14: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 15: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 16: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 17: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 18: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 19: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 20: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Express!

Page 21: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Express?

Page 22: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

NPM (Node Package Manager)

• Check if NPM is installed – Windows: open command prompt – Mac: open terminal – type npm

• Install Express – npm install –g express – Windows: may need to right click run as admin – Mac: may need to type sudo npm install –g

express

Page 23: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Package.json

Page 24: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Server Server (NodeJS)

Express

Page 25: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

express helloexpress

Page 26: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Server Server (NodeJS)

Express

Page 27: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Server Server (NodeJS)

Express app.js

Page 28: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Server Server (NodeJS)

Express app.js package.json

Page 29: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Server Server (NodeJS)

Express app.js package.json Routes

Page 30: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Server Server (NodeJS)

Express app.js package.json Routes Views

Page 31: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Don’t forget to npm install!

Page 32: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Don’t forget to npm install!!

Page 33: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Don’t forget to npm install!!!

Page 34: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

package.json

/bin/www

Page 35: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 36: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command
Page 37: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

app.js

Page 38: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

app.js

users.js

Page 39: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

users.js

Page 40: Backend IA: NodeJS/Express - MIT 6.4706.470.scripts.mit.edu/2015/pages/lectures/WEBday2-nodejs.pdf · NPM (Node Package Manager) •Check if NPM is installed –Windows: open command

Questions?