47 строки
1.8 KiB
Markdown
47 строки
1.8 KiB
Markdown
StreamJsonRpc
|
|
===============
|
|
|
|
[![NuGet package](https://img.shields.io/nuget/v/StreamJsonRpc.svg)](https://nuget.org/packages/StreamJsonRpc)
|
|
[![Build Status](https://dev.azure.com/azure-public/vside/_apis/build/status/vs-streamjsonrpc)](https://dev.azure.com/azure-public/vside/_build/latest?definitionId=13)
|
|
[![codecov](https://codecov.io/gh/Microsoft/vs-streamjsonrpc/branch/master/graph/badge.svg)](https://codecov.io/gh/Microsoft/vs-streamjsonrpc)
|
|
[![Join the chat at https://gitter.im/vs-streamjsonrpc/Lobby](https://badges.gitter.im/vs-streamjsonrpc/Lobby.svg)](https://gitter.im/vs-streamjsonrpc/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
|
|
StreamJsonRpc is a cross-platform, .NET portable library that implements the
|
|
[JSON-RPC][JSONRPC] wire protocol.
|
|
|
|
It works over [Stream](https://docs.microsoft.com/en-us/dotnet/api/system.io.stream) or [WebSocket](https://docs.microsoft.com/en-us/dotnet/api/system.net.websockets.websocket) independent of the underlying transport.
|
|
|
|
Bonus features beyond the JSON-RPC spec include:
|
|
|
|
1. Request cancellation
|
|
1. .NET Events as notifications
|
|
1. Dynamic client proxy generation
|
|
|
|
## Supported platforms
|
|
|
|
* .NET 4.5
|
|
* Windows 8
|
|
* Windows Phone 8.1
|
|
* .NET Portable (Profile111)
|
|
* .NET Standard 1.1
|
|
|
|
## Compatibility
|
|
|
|
This library has been tested with and is compatible with the following other
|
|
JSON-RPC libraries:
|
|
|
|
* [json-rpc-peer][json-rpc-peer] (npm)
|
|
|
|
## Documentation
|
|
[Documentation](doc/index.md)
|
|
|
|
## Testability/mockability
|
|
|
|
Testing this library or users of this library can be done without any transport
|
|
by using the [Nerdbank.FullDuplexStream][FullDuplexStream] library in your tests
|
|
to produce the Stream object.
|
|
|
|
[JSONRPC]: http://jsonrpc.org/
|
|
[json-rpc-peer]: https://www.npmjs.com/package/json-rpc-peer
|
|
[FullDuplexStream]: https://www.nuget.org/packages/nerdbank.fullduplexstream
|