Skip to content

hewsond/libjson-rpc-cpp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libjson-rpc-cpp

This C++ library provides a json-rpc (remote procedure call) framework for Windows, Linux and MacOS (or any other UNIX derivate). It is fully JSON-RPC 2.0 compatible (JSON-RPC 2.0) and provides additional features, such as generic authentication mechanisms.

libjson-rpc-cpp logo

Features

  • Full JSON-RPC 2.0 Support (batch requests, parameter type and name checking, ...).
  • Authentication support: to restrict certain methods to certain user/groups only.
  • Easy to use.
  • Method parameter names and checks can be easily configured through a simple json configuration file.
  • Very verbose error reporting.
  • Embedded HTTP server to provide simple interfaces for your json-rpc server application.
  • Using cmake cross platform build system.
  • Tested under Windows7, MacOS X (10.7) and Linux (Ubuntu 12.10).
  • Super liberal MIT-License.

New

  • json-rpc client support
  • including HttpClient (wrapping libcurl)
  • stub generator for easy remote procedure calls

Compile & Run

see here.

Examples

see here.

Licsense

This framework is licensed under MIT.

Copyright (C) 2011-2013 Peter Spiess-Knafl

Permission is hereby granted, free of charge, to any person obtaining a copy of 
this software and associated documentation files (the "Software"), to deal in the 
Software without restriction, including without limitation the rights to 
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 
the Software, and to permit persons to whom the Software is furnished to do so, 
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all 
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, 
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE 
OR OTHER DEALINGS IN THE SOFTWARE.

Used Libraries

  • jsoncpp (licensed under MIT) jsoncpp is a very easy to use and powerful json library. It is used for all the JSON parsing and generation inside this library.
  • mongoose (licensed under MIT) mongoose is a http server that can be easily embedded into other applications. It is used here for the HttpConnector to provide HTTP json-rpc Requests.
  • curl lib curl is used for the HttpClient connections.

Thanks go to Baptiste Lepilleur and Sergey Lyubka for providing jsoncpp and mongoose.

About

C++ framework for json-rpc (json remote procedure call)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 51.4%
  • C 48.6%