Skip to content
forked from shana/StreamRpc

The StreamJsonRpc library offers JSON-RPC 2.0 over any .NET Stream, WebSocket, or Pipe. With bonus support for request cancellation, client proxy generation, and more.

License

Notifications You must be signed in to change notification settings

ericwu/StreamRpc

 
 

Repository files navigation

StreamJsonRpc

NuGet package Build Status

StreamRpc is fork of StreamJsonRpc, a cross-platform, .NET portable library that implements the [JSON-RPC][JSONRPC] wire protocol.

StreamRpc's goal is to be fast and minimize dependencies, so it uses MessagePack-CSharp as the default message serializer, removes Newtonsoft.Json entirely, and internalizes the essentials of Nerdbank.Streams and other utility libraries that StreamJsonRpc relies on, so it's small and as self-contained as possible.

It works over Stream or System.IO.Pipelines pipes, independent of the underlying transport.

Bonus features beyond the JSON-RPC spec include:

  1. Request cancellation
  2. .NET Events as notifications
  3. Dynamic client proxy generation
  4. Support for compact binary serialization (e.g. MessagePack)

Learn about the use cases for JSON-RPC and how to use this library from our documentation.

Supported platforms

  • .NET 4.7+
  • .NET Core

About

The StreamJsonRpc library offers JSON-RPC 2.0 over any .NET Stream, WebSocket, or Pipe. With bonus support for request cancellation, client proxy generation, and more.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 95.8%
  • Batchfile 2.7%
  • PowerShell 1.5%