
WebSocket
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
Until recently, creating desktop-like applications in the browser meant using inefficient Ajax or Comet technologies to communicate with the server. With this practical guide, you'll learn how to use WebSocket, a protocol that enables the client and server to communicate with each other on a single connection simultaneously. No more asynchronous communication or long polling!
For developers with a good grasp of JavaScript (and perhaps Node.js), author Andrew Lombardi provides useful hands-on examples throughout the book to help you get up to speed with the WebSocket API. You'll also learn how to use WebSocket with Transport Layer Security (TLS).
- Learn how to use WebSocket API events, messages, attributes, and methods within your client application
- Build bi-directional chat applications on the client and server with WebSocket as the communication layer
- Create a subprotocol over WebSocket for STOMP 1.0, the Simple Text Oriented Messaging Protocol
- Use options for older browsers that don't natively support WebSocket
- Protect your WebSocket application against various attack vectors with TLS and other tools
- Debug applications by learning aspects of the WebSocket lifecycle
More details
Other editions
Additional editions

Content
- Intro
- Copyright
- Table of Contents
- Preface
- Who Should Read This Book
- Goals of This Book
- Navigating This Book
- Conventions Used in This Book
- Using Code Examples
- Safari® Books Online
- How to Contact Us
- Acknowledgments
- Chapter 1. Quick Start
- Getting Node and npm
- Installing on Windows
- Installing on OS X
- Installing on Linux
- Hello, World! Example
- Why WebSocket?
- Summary
- Chapter 2. WebSocket API
- Initializing
- Stock Example UI
- WebSocket Events
- Event: Open
- Event: Message
- Event: Error
- Event: PING/PONG
- Event: Close
- WebSocket Methods
- Method: Send
- Method: Close
- WebSocket Attributes
- Attribute: readyState
- Attribute: bufferedAmount
- Attribute: protocol
- Stock Example Server
- Testing for WebSocket Support
- Summary
- Chapter 3. Bidirectional Chat
- Long Polling
- Writing a Basic Chat Application
- WebSocket Client
- Client Identity
- Events and Notifications
- The Server
- The Client
- Summary
- Chapter 4. STOMP over WebSocket
- Implementing STOMP
- Getting Connected
- Connecting via the Server
- Setting Up RabbitMQ
- Connecting the Server to RabbitMQ
- The Stock Price Daemon
- Processing STOMP Requests
- Client
- Using RabbitMQ with Web-Stomp
- STOMP Client for Web and Node.js
- Installing the Web-Stomp Plug-in
- Echo Client for Web-Stomp
- Summary
- Chapter 5. WebSocket Compatibility
- SockJS
- SockJS Chat Server
- SockJS Chat Client
- Socket.IO
- Adobe Flash Socket
- Connecting
- Socket.IO Chat Server
- Socket.IO Chat Client
- Pusher.com
- Channels
- Events
- Pusher Chat Server
- Pusher Chat Client
- Don't Forget: Pusher Is a Commercial Solution
- Reverse Proxy
- Summary
- Chapter 6. WebSocket Security
- TLS and WebSocket
- Generating a Self-Signed Certificate
- Installing on Windows
- Installing on OS X
- Installing on Linux
- Setting up WebSocket over TLS
- WebSocket Server over TLS Example
- Origin-Based Security Model
- Clickjacking
- X-Frame-Options for Framebusting
- Denial of Service
- Frame Masking
- Validating Clients
- Setting Up Dependencies and Inits
- Listening for Web Requests
- WebSocket Server
- Summary
- Chapter 7. Debugging and Tools
- The Handshake
- The Server
- The Client
- Download and Configure ZAP
- WebSocket Secure to the Rescue
- Validating the Handshake
- Inspecting Frames
- Masked Payloads
- Closing Connection
- Summary
- Chapter 8. WebSocket Protocol
- HTTP 0.9-The Web Is Born
- HTTP 1.0 and 1.1
- WebSocket Open Handshake
- Sec-WebSocket-Key and Sec-WebSocket-Accept
- WebSocket HTTP Headers
- WebSocket Frame
- Fin Bit
- Frame Opcodes
- Masking
- Length
- Fragmentation
- WebSocket Close Handshake
- WebSocket Subprotocols
- WebSocket Extensions
- Alternate Server Implementations
- Summary
- Index
- About the Author
System requirements
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.