Programming Node.js Applications with Express.js & MongoDB
Programming Node.js Applications with Express.js & MongoDB
About the Book
Having been first published by Ryan Dahl in 2009, Node.js -- the open source software that allows the common web language of JavaScript to run outside the browser -- has absolutely grabbed ahold of imaginations in the world of technology in its first half-decade of life. The explosion of Node.js applications and the exponentially increasing number of published modules are a huge indicator of its success as a platform.
This book will teach you all about how to write an MVC (model-view-controller) web application using Express.js and MongoDB -- two of the building blocks that have been absolutely embraced by the Node.js community. Sone of the topics include (but are not limited to) templating engines, authentication, relational data, AJAX, and security. Working code samples for each chapter and a repository containing a fully functioning content management system (CMS) covering the same topics written in the same style as the code within the book are also included!
Table of Contents
Preface
Who This Book Is For
Format
Code Samples & Repositories
Errata
Feedback
Chapter 1: A Node.js Primer
Node.js Introduction
Installing Node.js
Obligatory "Hello World" in Node.js
Installing Modules with npm
Chapter 2: Introduction to Express.js
Templates & Views
Dynamic Templates & Passing Data to Views
Chapter 3: Creating an MVC Express.js Application
Application Setup
Templating
Router
Controllers
Passing Data to Views
Partial Views
Summary
Chapter 4: Middleware & Configuration
Middleware
Configuration
Summary
Chapter 5: Debugging Node.js Applications
Installing Node Inspector
Debugging With Node Inspector
Summary
Chapter 6: Data Access & Validation With MongoDB
Installing Mongoose
Database Settings in config.js
Creating Data Models
Accessing Data in Controllers and Views
Editing and Deleting Data
Deleting Data
Editing Data
Testing It All Out
Validation of Data
Summary
Chapter 7: Relational Data in MongoDB
Updating Data Models
Adding Object References
Editing Items and Handlebars Helpers
Summary
Chapter 8: AJAX in Express.js Applications
Setup
Sending AJAX Requests
Summary
Chapter 9: Sessions & Authentication in Express.js
Getting Started with Sessions and Authentication
Authenticating Users Stored in a Database
Updating Code to Check Credentials on Sign In
Installation and Creating a Default User
Authenticated AJAX Requests
Summary
Chapter 10: Security
Cross-site Request Forgery
Anti-CSRF Tokens and AJAX Requests
Cross-Site Scripting (XSS)
Session Hijacking / Cookie Stealing
Use HTTPS
Summary
Chapter 11: Putting it All Together: Creating an Application
Setting Up Our Application
Middleware
Router.js
Views
Static Files
Running the Application
Data Models
Building the Admin Panel
Installation Routes & Creating a Default User
Dynamic Page & Post Routes
404 & Error Routes
Summary
Conclusion
Appendix A: Code Samples & Repos
Appendix B: MongoDB Shell
Other books by this author
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $14 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them