SignalR Real-time Application Cookbook

Use SignalR to create real-time, bidirectional, and asynchronous applications based on standard web technologies.

SignalR Real-time Application Cookbook

Cookbook
Roberto Vespa

Use SignalR to create real-time, bidirectional, and asynchronous applications based on standard web technologies.
$29.99
$49.99
RRP $29.99
RRP $49.99
eBook
Print + eBook
$12.99 p/month

Want this title & more? Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.
+ Collection
Free Sample

Book Details

ISBN 139781783285952
Paperback292 pages

About This Book

  • Build high performance real-time web applications
  • Broadcast messages from the server to many clients simultaneously
  • Implement complex and reactive architectures

Who This Book Is For

Different levels of developers will find this book useful. Beginners will be able to learn all the fundamental concepts of SignalR, quickly becoming productive in a difficult arena. Experienced programmers will find in this book a handy and useful collection of ready-made solutions to common use cases, which they will be able to enhance as needed. Developers can also use the book as a quick reference to the most important SignalR features. No previous practical experience either with SignalR or with real-time communication in general is required.

Table of Contents

Chapter 1: Understanding the Basics
Introduction
Adding a Hub to an ASP.NET project
Adding a Hub to a self-hosting application
Connecting to a Hub from a JavaScript client
Connecting to a Hub from a .NET application
Chapter 2: Using Hubs
Introduction
Adding a method to a Hub and counting the calls to it
Calling back the caller from a Hub's method
Broadcasting to all connected clients
Adding a connection to a group
Removing a connection from a group
Broadcasting to all connected clients except the caller
Broadcasting to all clients except the specified ones
Broadcasting to all clients in a group except the caller
Broadcasting from outside a Hub
Using the return value of a Hub method
Chapter 3: Using the JavaScript Hubs Client API
Introduction
Starting a Hub connection
Setting up connection transport strategies
Calling a server-side Hub method
Adding a client-side method on the proxy and calling it from the server
Managing errors across a complex asynchronous workflow
Chapter 4: Using the .NET Hubs Client API
Introduction
Starting a Hub connection
Setting up connection transport strategies
Calling a server-side Hub method
Adding a client-side method on the proxy and calling it from the server
Managing errors across a complex asynchronous workflow
Chapter 5: Using a Persistent Connection
Introduction
Adding and registering a persistent connection
Sending messages from the server
Sending messages to the server
Exchanging messages between a server and a JavaScript client
Exchanging messages between a server and a .NET client
Chapter 6: Handling Connections
Introduction
Controlling the lifetime of a connection
Handling a connection transient state
Establishing a cross-domain connection
Chapter 7: Analyzing Advanced Scenarios
Introduction
Generating static files for JavaScript proxies
Authorizing requests on a Hub
Authorizing requests on a persistent connection
Authorizing requests in a self-hosting context
Scaling up
Scaling out with Azure
Scaling out with Redis
Scaling out with SQL Server
Establishing proxy-less connections
Introducing dependency injection (simple approach)
Introducing dependency injection (advanced approach)
Using dependency injection to replace a default behavior
Extending the Hub pipeline
Handling errors
Chapter 8: Building Complex Applications
Introduction
Implementing a room-based chat application
Implementing a shared whiteboard
Implementing a real-time map of flying airplanes
Implementing a "pets finder" application
Implementing a custom backplane
Implementing a real-time error notification system

What You Will Learn

  • Teach you how to build SignalR servers
  • Illustrate SignalR clients built with both the JavaScript and the .NET client libraries
  • Demonstrate both the Hubs API and the Persistent Connection API
  • Demystify the lifetime of a connection
  • Explain how to authorize requests
  • Scale up and scale out your SignalR applications
  • Enable you to handle errors efficiently
  • Extend SignalR with custom services
  • Solve complex real-time scenarios with the help of advanced, ready-made examples

In Detail

SignalR is a recent addition to ASP.NET, which allows you to add real-time functionalities to your applications. SignalR enables bidirectional communication between client and server over HTTP, transparently, and ensures you're always provided with the experience of a persistent connection.

SignalR Real-time Application Cookbook is a practical, hands-on guide that provides a number of clear step-by-step recipes that will gradually enable you to add SignalR as an innovative, effective, and useful item in your toolbox. This book will move from simple examples on to complex use cases, going through a comprehensive overview of the library. Other than helping out with the common tasks, at the end of the book you will find a set of ready-made solutions for more complex scenarios.

Authors

Table of Contents

Chapter 1: Understanding the Basics
Introduction
Adding a Hub to an ASP.NET project
Adding a Hub to a self-hosting application
Connecting to a Hub from a JavaScript client
Connecting to a Hub from a .NET application
Chapter 2: Using Hubs
Introduction
Adding a method to a Hub and counting the calls to it
Calling back the caller from a Hub's method
Broadcasting to all connected clients
Adding a connection to a group
Removing a connection from a group
Broadcasting to all connected clients except the caller
Broadcasting to all clients except the specified ones
Broadcasting to all clients in a group except the caller
Broadcasting from outside a Hub
Using the return value of a Hub method
Chapter 3: Using the JavaScript Hubs Client API
Introduction
Starting a Hub connection
Setting up connection transport strategies
Calling a server-side Hub method
Adding a client-side method on the proxy and calling it from the server
Managing errors across a complex asynchronous workflow
Chapter 4: Using the .NET Hubs Client API
Introduction
Starting a Hub connection
Setting up connection transport strategies
Calling a server-side Hub method
Adding a client-side method on the proxy and calling it from the server
Managing errors across a complex asynchronous workflow
Chapter 5: Using a Persistent Connection
Introduction
Adding and registering a persistent connection
Sending messages from the server
Sending messages to the server
Exchanging messages between a server and a JavaScript client
Exchanging messages between a server and a .NET client
Chapter 6: Handling Connections
Introduction
Controlling the lifetime of a connection
Handling a connection transient state
Establishing a cross-domain connection
Chapter 7: Analyzing Advanced Scenarios
Introduction
Generating static files for JavaScript proxies
Authorizing requests on a Hub
Authorizing requests on a persistent connection
Authorizing requests in a self-hosting context
Scaling up
Scaling out with Azure
Scaling out with Redis
Scaling out with SQL Server
Establishing proxy-less connections
Introducing dependency injection (simple approach)
Introducing dependency injection (advanced approach)
Using dependency injection to replace a default behavior
Extending the Hub pipeline
Handling errors
Chapter 8: Building Complex Applications
Introduction
Implementing a room-based chat application
Implementing a shared whiteboard
Implementing a real-time map of flying airplanes
Implementing a "pets finder" application
Implementing a custom backplane
Implementing a real-time error notification system

Book Details

ISBN 139781783285952
Paperback292 pages
Read More