Expand description
jsonrpc http server.
use jsonrpc_core::*;
use jsonrpc_http_server::*;
fn main() {
let mut io = IoHandler::new();
io.add_sync_method("say_hello", |_: Params| {
Ok(Value::String("hello".to_string()))
});
let _server = ServerBuilder::new(io)
.start_http(&"127.0.0.1:3030".parse().unwrap())
.expect("Unable to start RPC server");
_server.wait();
}
Re-exports§
pub use hyper;
pub use jsonrpc_core;
pub use crate::server_utils::tokio;
Modules§
- CORS handling utility functions
Structs§
- Handle used to close the server. Can be cloned and passed around to different threads and be used to close a server that is
wait()
ing. - Host type
- Request Origin
- Simple server response structure
- RPC Handler bundled with metadata extractor.
- jsonrpc http server instance
- Convenient JSON-RPC HTTP Server builder.
- jsonrpc http request handler.
Incoming
is a stream of incoming sockets Polling the stream may return a temporary io::Error (for instance if we can’t open the connection because of “too many open files” limit) we use for_each combinator which:- A weak handle to the RPC server.
Enums§
- Origins allowed to access
- CORS response headers
- Specifies if domains should be validated.
- Action undertaken by a middleware.
- REST -> RPC converter state.
Traits§
- Extracts metadata from the HTTP request.
- Allows to intercept request and handle it differently.
Functions§
- Returns the CORS AllowHeaders header that should be returned with that request.
- Returns a CORS AllowOrigin header that should be returned with that request.
- Returns
true
if Host header in request matches a list of allowed hosts.
Type Aliases§
- Task executor for Tokio 0.2 runtime.