@aspnet/signalr

ASP.NET Core SignalR Client

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
2,4040Dec 1, 2018Oct 17, 2016Minified + gzip package size for @aspnet/signalr in KB

Readme

JavaScript and TypeScript clients for SignalR for ASP.NET Core

:warning: This package will no longer be supported starting August 21, 2021. This package follows the .NET Core 2.1 support lifecycle which is ending soon. Please transition to using @microsoft/signalr as described below.

Note: The JavaScript and TypeScript clients for SignalR for ASP.NET Core have been moved to @microsoft/signalr. If you are already using @aspnet/signalr and are unsure when to move to @microsoft/signalr, check the Feature Distribution chart in the ASP.NET Core SignalR documentation. Newer client releases are compatible with older version of ASP.NET Core SignalR which means it is safe to upgrade the client before upgrading the server.

Installation

npm install @aspnet/signalr

Usage

See the SignalR Documentation at docs.microsoft.com for documentation on the latest release.

Browser

To use the client in a browser, copy *.js files from the dist/browser folder to your script folder include on your page using the <script> tag.

Node.js

The following polyfills are required to use the client in Node.js applications:

  • XmlHttpRequest - always
  • WebSockets - to use the WebSockets transport
  • EventSource - to use the ServerSentEvents transport
  • btoa/atob - to use binary protocols (e.g. MessagePack) over text transports (ServerSentEvents)

Example (Browser)

let connection = new signalR.HubConnectionBuilder()
    .withUrl("/chat")
    .build();

connection.on("send", data => {
    console.log(data);
});

connection.start()
    .then(() => connection.invoke("send", "Hello"));

Example (NodeJS)

const signalR = require("@aspnet/signalr");

let connection = new signalR.HubConnectionBuilder()
    .withUrl("/chat")
    .build();

connection.on("send", data => {
    console.log(data);
});

connection.start()
    .then(() => connection.invoke("send", "Hello"));

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.