Express.js. Tworzenie aplikacji sieciowych w Node.js - ebook
Express.js. Tworzenie aplikacji sieciowych w Node.js - ebook
Ta książka jest kompleksowym podręcznikiem, który przedstawi Ci sposób działania Express.js w praktyce i przeprowadzi Cię przez poszczególne etapy budowy aplikacji. Autor jasno i precyzyjnie wyjaśnia wszystkie koncepcje, których zrozumienie jest niezbędne do programowania w Express.js. Znajdziesz tu omówienie zagadnień związanych m.in. z oprogramowaniem pośredniczącym, tworzeniem szkieletu aplikacji, generowaniem szablonów, przetwarzaniem danych żądania i cookies, zarządzaniem uwierzytelnianiem i sesjami, obsługą błędów i przygotowaniem aplikacji do wdrożenia w środowisku produkcyjnym. Na pewno docenisz też liczne przykłady kodu źródłowego.
Jeśli — jako inżynier oprogramowania lub programista sieciowy — poszukujesz sposobu, aby bez wertowania setek stron dokumentacji programować z wykorzystaniem frameworku Express.js, a przy tym poszerzyć swoje kompetencje, ta książka jest właśnie dla Ciebie.
Dzięki tej książce:
- rozpoczniesz pracę z oprogramowaniem pośredniczącym
- będziesz sprawnie korzystać z silników szablonów
- dowiesz się, jak zapewnić aplikacji bezpieczeństwo
- nauczysz się tworzyć aplikacje oparte na domenie
- przeanalizujesz przykłady działających aplikacji, takich jak Instagram, HackHall i inne
Azat Mardan - od kilkunastu lat programuje aplikacje mobilne i sieciowe. Pracował nad wieloma aplikacjami o kluczowym znaczeniu, wykorzystywanymi przez agencje rządowe USA. Jest twórcą kilku projektów open source dla Node.js (m.in. ExpressWorks, mongoui, HackHall.com i NodeFramework.com), a także współtwórcą express, oauth, jade-browser i innych modułów npm. Tworzy programistyczne kursy online, publikuje specjalistyczne artykuły na blogu, a ponadto jest autorem książek poświęconych JavaScriptowi i Node.js.
Spis treści
O autorze (11)
O recenzentach technicznych (13)
Wstęp (15)
Wprowadzenie (17)
- Dlaczego napisałem tę książkę? (17)
- Dla kogo jest przeznaczona ta książka? (18)
- O czym jest ta książka? (18)
- O czym nie jest ta książka? (18)
- Przykłady (19)
- Errata i dane kontaktowe (19)
Podziękowania (21)
CZĘŚĆ I. ROZPOCZĘCIE PRACY (23)
Rozdział 1. Rozpoczęcie pracy z Express.js (25)
- Jak działa Express.js? (26)
- Zależności firm trzecich (27)
- Utworzenie egzemplarza (27)
- Nawiązanie połączenia z bazą danych (27)
- Konfiguracja ustawień aplikacji Express.js (28)
- Zdefiniowanie oprogramowania pośredniczącego (28)
- Zdefiniowanie tras (28)
- Uruchomienie aplikacji (28)
- Instalacja Express.js (29)
- Instalacja Express.js Generator (32)
- Podsumowanie (34)
Rozdział 2. Witaj, świecie (35)
- Rozpoczęcie pracy (35)
- Użycie procedur obsługi żądań (36)
- Wyświetlanie komunikatów w powłoce (37)
- Usprawnienie aplikacji (38)
- Polecenia generatora (39)
- Wygenerowanie szkieletu aplikacji Express.js (40)
- Przegląd struktury aplikacji (41)
- Plik app.js (41)
- Moduły i architektura MVC (45)
- Monitorowanie pod kątem zmian w plikach (46)
- Podsumowanie (47)
CZĘŚĆ II. DOKŁADNE OMÓWIENIE API (49)
Rozdział 3. Konfiguracja, ustawienia i środowiska (51)
- Konfiguracja (51)
- app.set() i app.get() (52)
- app.enable() i app.disable() (52)
- app.enabled() i app.disabled() (53)
- Ustawienia (53)
- env (54)
- view cache (54)
- view engine (55)
- views (55)
- trust proxy (56)
- jsonp callback name (56)
- json replacer i json spaces (57)
- case sensitive routing (58)
- strict routing (59)
- x-powered-by (60)
- etag (60)
- query parser (61)
- subdomain offset (62)
- Środowiska (62)
- Podsumowanie (65)
Rozdział 4. Praca z oprogramowaniem pośredniczącym (67)
- Zastosowanie oprogramowania pośredniczącego (68)
- Najważniejsze oprogramowanie pośredniczące (71)
- compression (72)
- morgan (74)
- body-parser (75)
- urlencoded() (76)
- cookie-parser (77)
- express-session (77)
- csurf (78)
- express.static() (79)
- connect-timeout (80)
- errorhandler (82)
- method-override (82)
- response-time (83)
- serve-favicon (84)
- serve-index (85)
- vhost (87)
- connect-busboy (87)
- Inne oprogramowanie pośredniczące (88)
- Podsumowanie (89)
Rozdział 5. Silniki szablonów i Consolidate.js (91)
- Jak używać silników szablonów? (92)
- app.engine() (93)
- Rzadziej stosowane biblioteki (94)
- Dostępne silniki szablonów (97)
- Jade (97)
- Haml.js (97)
- EJS (97)
- Handlebars.js (97)
- Adaptery Hogan.js (97)
- Combyne.js (98)
- Swig (98)
- Whiskers (98)
- Blade (98)
- Haml-Coffee (98)
- Webfiller (98)
- Consolidate.js (98)
- Podsumowanie (100)
Rozdział 6. Parametry i routing (101)
- Parametry (101)
- app.param() (105)
- Routing (108)
- app.NAZWA() (108)
- app.all() (111)
- Ukośniki na końcu (111)
- Klasa Router (111)
- router.route(path) (111)
- Procedury obsługi żądania (113)
- Podsumowanie (114)
Rozdział 7. Obiekt request w Express.js (117)
- request.query (118)
- request.params (120)
- request.body (121)
- request.route (122)
- request.cookies (123)
- request.signedCookies (124)
- request.header() i request.get() (125)
- Inne atrybuty i metody (125)
- Podsumowanie (129)
Rozdział 8. Obiekt response w Express.js (131)
- response.render() (132)
- response.locals (134)
- response.set() (135)
- response.status() (137)
- response.send() (138)
- response.json() (141)
- response.jsonp() (142)
- response.redirect() (144)
- Inne właściwości i metody odpowiedzi (144)
- Strumienie (148)
- Podsumowanie (150)
Rozdział 9. Obsługa błędów i uruchamianie aplikacji (151)
- Obsługa błędów (151)
- Uruchomienie aplikacji (155)
- app.locals (155)
- app.render() (155)
- app.mountpath (156)
- app.on('mount', funkcja(nadrzędna){...}) (157)
- app.path() (157)
- app.listen() (157)
- Podsumowanie (161)
CZĘŚĆ III. ROZWIĄZYWANIE NAJCZĘŚCIEJ POJAWIAJĄCYCH SIĘ PROBLEMÓW (163)
Rozdział 10. Abstrakcja (165)
- Oprogramowanie pośredniczące (165)
- Trasy (166)
- Połączenie oprogramowania pośredniczącego i tras (168)
- Podsumowanie (170)
Rozdział 11. Wskazówki dotyczące baz danych, kluczy i strumieni (171)
- Użycie baz danych w modułach (171)
- Klucze i hasła (173)
- Plik JSON (173)
- Zmienne środowiskowe (175)
- Strumienie (175)
- Podsumowanie (179)
Rozdział 12. Redis i wzorce uwierzytelniania (181)
- Redis (181)
- Wzorce uwierzytelniania (184)
- Podsumowanie (185)
Rozdział 13. Wielowątkowość z użyciem klastrów (187)
- Przykład wielowątkowości (187)
- Podsumowanie (190)
Rozdział 14. Stosowanie bibliotek Stylus, Less i Sass (191)
- Stylus (191)
- Less (192)
- Sass (193)
- Podsumowanie (193)
Rozdział 15. Zapewnienie bezpieczeństwa (195)
- Cross-Site Request Forgery (195)
- Przetwarzanie uprawnień (197)
- Nagłówki zabezpieczeń w HTTP (198)
- Weryfikacja danych wejściowych (199)
- Podsumowanie (201)
Rozdział 16. Socket.IO i Express.js (203)
- Użycie Socket.IO (203)
- Uruchomienie aplikacji (207)
- Podsumowanie (208)
Rozdział 17. Domeny i Express.js (209)
- Zdefiniowanie problemu (209)
- Prosty przykład oparty na domenie (210)
- Utworzenie aplikacji opartej na domenie (211)
- Podsumowanie (214)
Rozdział 18. Sails.js, DerbyJS, LoopBack i inne frameworki (215)
- Sails.js (215)
- DerbyJS (217)
- LoopBack (219)
- Inne frameworki (222)
- Podsumowanie (222)
CZĘŚĆ IV. PRZYKŁADY (223)
Rozdział 19. Galeria Instagram (225)
- Zaczynamy pracę nad galerią Instagram (225)
- Wyświetlanie galerii (229)
- Podsumowanie (230)
Rozdział 20. Aplikacja Todo (231)
- Ogólne omówienie projektu (232)
- Konfiguracja (235)
- Plik app.js (237)
- Trasy (242)
- Jade (246)
- Less (250)
- Podsumowanie (251)
Rozdział 21. API REST (253)
- Podstawy API RESTful (254)
- Wprowadzenie do testów (255)
- Zależności (259)
- Implementacja serwera (260)
- Podsumowanie (265)
Rozdział 22. Aplikacja HackHall (267)
- Co to jest HackHall? (267)
- Uruchomienie HackHall (268)
- Struktura aplikacji (274)
- Plik package.json (275)
- Aplikacja Express.js (276)
- Trasy (280)
- Plik index.js (280)
- Plik auth.js (280)
- Plik main.js (284)
- Plik users.js (287)
- Plik application.js (292)
- Plik posts.js (295)
- Modele Mongoose (301)
- Testy Mocha (307)
- Podsumowanie (312)
DODATKI (313)
Dodatek A. Dalsza lektura i zasoby (315)
- Inne frameworki Node.js (315)
- Książki poświęcone Node.js (316)
- Klasyka JavaScript (318)
- Kursy (318)
Dodatek B. Migracja Express.js 3.x do 4.x: oprogramowanie pośredniczące, trasy i inne zmiany (319)
- Wprowadzenie do oprogramowania pośredniczącego, które nie zostało dołączone do wydania Express.js 4 (319)
- Usunięcie z aplikacji Express.js 4 metod uznanych za przestarzałe (321)
- app.configure() (321)
- app.router() (321)
- res.on('header') (322)
- res.charset (322)
- res.headerSent (322)
- req.accepted() (322)
- Inne zmiany wprowadzone w Express.js 4 (322)
- app.use() (322)
- res.location() (323)
- app.route() (323)
- json spaces (323)
- req.params (323)
- res.locals (323)
- req.is (323)
- Działający w powłoce generator Express.js (323)
- Poznanie nowego egzemplarza tras w Express.js 4 oraz sposoby jego łączenia z innymi (323)
- Kolejne zasoby dotyczące migracji do Express.js 4 (325)
Dodatek C. Ściąga z Express.js 4 (327)
- Instalacja (328)
- Generator (328)
- Podstawy (329)
- Trasy i metody HTTP (329)
- Żądanie (329)
- Skróty nagłówków żądania (330)
- Odpowiedź (330)
- Sygnatury procedury obsługi (330)
- Stylus i Jade (330)
- Body (331)
- Static (331)
- Oprogramowanie pośredniczące Connect (331)
- Inne popularne oprogramowanie pośredniczące (331)
Dodatek D. ExpressWorks (333)
- Instalacja (333)
- Sposób użycia (334)
- Zerowanie (334)
- Zadania (334)
- Witaj, świecie (334)
- Jade (335)
- Stary dobry formularz (335)
- Static (335)
- Style CSS (335)
- Param pam pam (335)
- Co znajduje się w zapytaniu? (336)
- Dane JSON (336)
- Podsumowanie (336)
Skorowidz (337)
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-1667-6 |
Rozmiar pliku: | 8,1 MB |