-
Notifications
You must be signed in to change notification settings - Fork 30
Description
Is your feature request related to a problem? Please describe.
It would be nice to have better interop with HTTP based programs, so having a wrapper around RPC which implements the HTTP interfaces in Dart would be nice to have.
Describe the solution you'd like
There are two solutions that come to mind:
-
A library which simply exposes an RPC client as an HTTP client interface, and an RPC server as an HTTP server interface. This is useful when you want a single solution that looks and feels like an HTTP server, but is not an HTTP server. I see this being used to take an existing application using HTTP and simply swap out the HTTP interface with an atPlatform RPC service. (i.e. touching as little code as possible)
-
A library which serves an HTTP server, which forwards requests over an RPC client, and an RPC server which forwards requests over an HTTP client. I see this being used to along side an existing HTTP application, and wrapping it by point the HTTP client at the atRPC's HTTP server, and then point the atRPC's HTTP client at the HTTP server. (i.e. touching no existing code, only changing routes and closing ports)
For both solutions, there is only real value if it can support at_policy natively, ideally with developer defined policy evaluation. (i.e. the application developer defines how the RPC server resolves policies, not some statically pre-defined way)
Describe alternatives you've considered
NoPorts is the only way right now, but NoPorts is incapable of applying policy evaluation to the HTTP request body, in theory this solution would be able to.
Additional context
N/A