Data Push Apps with HTML5 SSE. Pragmatic Solutions for Real-World Clients - Helion
ISBN: 978-14-493-7189-0
stron: 222, Format: ebook
Data wydania: 2014-03-20
Księgarnia: Helion
Cena książki: 92,65 zł (poprzednio: 107,73 zł)
Oszczędzasz: 14% (-15,08 zł)
Make sure your website or web application users get content updates right now with minimal latency. This concise guide shows you how to push new data from the server to clients with HTML5 Server-Sent Events (SSE), an exceptional technology that doesn’t require constant polling or user interaction. You’ll learn how to build a real-world SSE application from start to finish that solves a demanding domain problem.
You’ll also discover how to increase that application’s desktop and mobile browser support from 60% to 99%, using different fallback solutions. If you’re familiar with HTML, HTTP, and basic JavaScript, you’re ready to get started.
- Determine whether SSE, WebSockets, or data pull is best for your organization
- Develop a working SSE application complete with backend and frontend solutions
- Address error handling, system recovery, and other issues to make the application production-quality
- Explore two fallback solutions for browsers that don’t support SSE
- Tackle security issues, including authorization and "disallowed origin"
- Develop realistic, repeatable data that’s useful in test-driven SSE design
- Learn SSE protocol elements not covered in the example application
Osoby które kupowały "Data Push Apps with HTML5 SSE. Pragmatic Solutions for Real-World Clients", wybierały także:
- HTML5. Kurs video. Poziom pierwszy. Programowanie dla początkujących webmasterów 89,00 zł, (26,70 zł -70%)
- Tworzenie gier w języku HTML5 dla profesjonalistów. Wydanie II 67,42 zł, (20,90 zł -69%)
- HTML 5. Kurs video. Poziom drugi. Tworzenie profesjonalnych stron WWW 89,00 zł, (35,60 zł -60%)
- Sass od podstaw. Kurs video. Budowa kompleksowej strony w oparciu o metodologię BEM 47,93 zł, (22,05 zł -54%)
- HTML i CSS. Przewodnik dla pocz 69,00 zł, (34,50 zł -50%)
Spis treści
Data Push Apps with HTML5 SSE. Pragmatic Solutions for Real-World Clients eBook -- spis treści
- Data Push Apps with HTML5 SSE
- Preface
- The Kind of Person You Need to Be
- Organization of This Book
- Conventions Used in This Book
- Using Code Examples
- Safari Books Online
- How to Contact Us
- 1. All About SSE...And Then Some
- HTML5
- Data Push
- Other Names for Data Push
- Potential Applications
- Comparison with WebSockets
- When Data Push Is the Wrong Choice
- Decisions, Decisions
- Take Me to Your Code!
- 2. Super Simple Easy SSE
- Minimal Example: The Frontend
- Using JQuery?
- Minimal Example: The Backend
- The Backend in Node.js
- Minimal Web Server in Node.js
- Pushing SSE in Node.js
- Now to Get It Working in a Browser!
- Smart, Sassy Exit
- 3. A Delightfully Realistic Data Push Application
- Our Problem Domain
- The Backend
- The Frontend
- Realistic, Repeatable, Random Data
- Fine-Grained Timestamps
- Taking Control of the Randomness
- Making Allowance for the Real Passage of Time
- Taking Stock
- 4. Living in More Than the Present Moment
- More Structure in Our Data
- Refactoring the PHP
- Refactoring the JavaScript
- Adding a History Store
- Persistent Storage
- Now We Are Historians
- 5. No More Ivory Tower: Making Our Application Production-Quality
- Error Handling
- Bad JSON
- Adding Keep-Alive
- Server Side
- Client Side
- SSE Retry
- Adding Scheduled Shutdowns/Reconnects
- Sending Last-Event-ID
- ID for Multiple Feeds
- Using Last-Event-ID
- Passing the ID at Reconnection Time
- Dont Act Globally, Think Locally
- Cache Prevention
- Death Prevention
- The Easy Way to Lose Weight
- Looking Back
- 6. Fallbacks: Data Push for Everyone Else
- Browser Wars
- What Is Polling?
- How Does Long-Polling Work?
- Show Me Some Code!
- Optimizing Long-Poll
- What If JavaScript Is Disabled?
- Grafting Long-Poll onto Our FX Application
- Connecting
- Long-Poll and Keep-Alive
- Long-Poll and Connection Errors
- Server Side
- Dealing with Data
- Wire It Up!
- IE8 and Earlier
- IE7 and Earlier
- The Long and Winding Poll
- 7. Fallbacks: There Has to Be a Better Way!
- Commonalities
- XHR
- iframe
- Grafting XHR/Iframe onto Our FX Application
- XHR on the Backend
- XHR on the Frontend
- Iframe on the Frontend
- Wiring Up XHR
- Wiring Up Iframe
- Thanks for the Memories
- Putting the FX Baby to Bed
- 8. More SSE: The Rest of the Standard
- Headers
- Event
- Multiline Data
- Whitespace in Messages
- Headers Again
- So Is That Everything?
- 9. Authorization: Whos That Knocking at My Door?
- Cookies
- Authorization (with Apache)
- HTTP POST with SSE
- Multiple Authentication Choices
- SSL and CORS (Connecting to Other Servers)
- Allow-Origin
- Fine Access Control
- HEAD and OPTIONS
- Chrome and Safari and CORS
- Constructors and Credentials
- withCredentials
- CORS and Fallbacks
- CORS and IE9 and Earlier
- IE8/IE9: Always Use Long-Poll
- Handling IE9 and Earlier Dynamically
- Putting It All Together
- The Future Holds More of the Same
- A. The SSE Standard
- W3C Candidate Recommendation 11 December 2012
- Abstract
- Status of This Document
- Candidate Recommendation Exit Criteria
- Table of Contents
- 1 Introduction
- 2 Conformance requirements
- 2.1 Dependencies
- 3 Terminology
- 4 The EventSource interface
- 5 Processing model
- 6 Parsing an event stream
- 7 Interpreting an event stream
- 8 Notes
- 9 Connectionless push and other features
- 10 Garbage collection
- 11 IANA considerations
- 11.1 text/event-stream
- 11.2 Last-Event-ID
- References
- Acknowledgements
- W3C Candidate Recommendation 11 December 2012
- B. Refactor: JavaScript Globals, Objects, and Closures
- Introducing the Example
- The Problem Is
- JavaScript Objects and Constructors
- The Code with Objects
- JavaScript Closures
- Tea for Two, and Two for Tea
- C. PHP
- Classes in PHP
- Random Functions
- Superglobals
- Date Handling
- Passwords
- Falling Asleep
- Index
- Colophon
- Copyright