Tezos_rpc_http_server.RPC_middlewareThis module provides middlewares that is used by the RPC servers to forward unsupported RPCs to a full node.
type forwarder_events = {on_forwarding : Cohttp.Request.t -> unit Lwt.t;Called right before an unsupported RPC gets forwarded to the node.
*)on_locally_handled : Cohttp.Request.t -> unit Lwt.t;Called after an RPC has been handled by the server itself (without any forwarding).
*)}Callbacks to add side-effects to proxy_server_query_forwarder, typically used to emit events.
val init_forwarder : unit -> forwarder_resourcesval forwarding_conn_closed :
forwarder_resources ->
('a * Cohttp.Connection.t) ->
unitval proxy_server_query_forwarder :
?acl:RPC_server.Acl.t ->
?ctx:Cohttp_lwt_unix.Net.ctx ->
?forwarder_events:forwarder_events ->
forwarder_resources ->
Uri.t ->
RPC_server.callback ->
RPC_server.callbackA Resto middleware that transforms any callback to an other that rewrites queries that the proxy server cannot handle and forwards them to the full node at the given Uri.t. If acl parameter is provided, the forwarding happens only if the ACL rules are satisfied.
val rpc_metrics_transform_callback :
update_metrics:
(string ->
string ->
(unit -> Cohttp_lwt_unix.Server.response_action Lwt.t) ->
Cohttp_lwt_unix.Server.response_action Lwt.t) ->
unit Tezos_rpc.Directory.t ->
RPC_server.callback ->
RPC_server.callbackA Resto middleware that transforms any server callback to an other that handles RPC metrics
module Http_cache_headers : sig ... endA Resto middleware that adds Http cache headers to responses of any block query. These headers can be used by Caches to invalidate responses. The supported headers are: * `max-age`: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control#response_directives * `if-none-match`: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-None-Match