- Getting Started with hapi.js
- John Brett
- 308字
- 2021-07-09 19:35:56
Chapter 1. Introducing hapi.js
hapi.js (commonly referred to as hapi) stands for HTTP API. It is a rich framework for building applications and services. It was originally designed for the rapid development of RESTful API services using JavaScript, but has since grown to be a full web application framework with out-of-the-box features for templating, input validation, authentication, caching, and more recently, support for real-time applications with web socket support.
The original philosophy that hapi was built around was increasing developer hapi-ness; the aim was to increase productivity by providing additional tools to help with development, but without getting in the way. It was also built with a security-first approach, meaning that the tools provided were developed with smart secure defaults, with the mindset of not giving the developers the ability to shoot themselves in the foot for not knowing some hidden configuration setting or implied design pattern.
hapi was created by the Mobile team at Walmart Labs, led by Eran Hammer (who created OAuth), to handle their traffic for events like Black Friday, one of the busiest days for online shopping in the US calendar.
hapi was born out of necessity; the Walmart team never intended to build a framework. They originally started with express, currently Node's most widely used framework. After hitting some limitations with express, and finding similar limitations in other frameworks, they finally discovered that it would be easier to create their own framework rather than hack an existing framework to meet their needs. Eran wrote a great post about this journey on his blog, http://hueniverse.com/2012/12/20/hapi-a-prologue; I encourage you to read it. Fortunately for us, hapi was born out of all this.
This chapter will be your introduction to hapi.js, and will cover the following topics:
- Introducing Node.js—a prerequisite to learning hapi.js
- A background on hapi.js
- Creating our first hapi.js server
- Building Modern Web Applications Using Angular
- Python機器學習:數據分析與評分卡建模(微課版)
- C/C++常用算法手冊(第3版)
- Java軟件開發基礎
- Ext JS 4 Web Application Development Cookbook
- Python機器學習基礎教程
- 精通MATLAB(第3版)
- Windows Phone 7.5:Building Location-aware Applications
- 軟件品質之完美管理:實戰經典
- Mastering Unity 2D Game Development(Second Edition)
- Instant Lucene.NET
- Multithreading in C# 5.0 Cookbook
- Cocos2d-x Game Development Blueprints
- 愛上C語言:C KISS
- 微前端設計與實現