orangy
origin
and local
properties. They will provide information about host, port, protocol and version, remote address, method and uri used to connect. When connection is direct, they will be identical. When connection is done via (reverse) proxy, local
will describe connection to a server itself, while origin
will describe connection from client to proxy, using X-Forwarded-*
and other headers. Another use case is hosting application in a servlet container in context different from root.
So it looks like: call.request.origin.host
or call.request.local.port
or call.request.origin.method
It’s not just connection, but rather tcp connection information + information from http request line, possibly overriden by various parties (proxy, servlet context, etc).
Any ideas how to call such entity? It’s not a …Request
because well, it’s already on an entity called …Request
. Not a …Connection
because it’s not just connection. We're really stuck with this name… Probably it’s an indication we are doing something wrong, but still.