trait ProxySupport extends ClientIPDirectives
Adds proxy to akka-http services to proxy requests to other hosts.
If the target server is known in advance, a Proxy object can be created. This internally materializes a flow that
is continuously active and ready to route incoming requests.
For one-off requests or requests to previously unknown hosts, this trait defines two routes:
- proxySingleTo takes the original request and proxies it to the proxy URI;
- proxySingleToUnmatchedPath copies only the unmatched path from the original URI, and adds it to the path of the
proxy URI.
- Alphabetic
- By Inheritance
- ProxySupport
- ClientIPDirectives
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
optionalClientIP: Directive1[Option[RemoteAddress]]
Directive extracting the remote address of the client from the
X-Forwarded-For,Remote-AddressorX-Real-IPheaders (in that order).Directive extracting the remote address of the client from the
X-Forwarded-For,Remote-AddressorX-Real-IPheaders (in that order).- Definition Classes
- ClientIPDirectives
-
def
optionalRawClientIP: Directive1[Option[String]]
Directive extracting the raw IP of the client from either the
X-Forwarded-For,Remote-AddressorX-Real-IPheaders (in that order).Directive extracting the raw IP of the client from either the
X-Forwarded-For,Remote-AddressorX-Real-IPheaders (in that order).- Definition Classes
- ClientIPDirectives
-
def
proxySingleTo(uri: Uri): Route
Proxies a single request to a destination URI.
Proxies a single request to a destination URI.
- uri
the target URI
- returns
a route that handles requests by proxying them to the given URI.
-
def
proxySingleToUnmatchedPath(uri: Uri): Route
Proxies a single request to a destination base URI.
Proxies a single request to a destination base URI. The target URI is created by concatenating the base URI with the unmatched path.
- uri
the target base URI
- returns
a route that handles requests by proxying them to the given URI.
-
def
strictProxySingleTo(uri: Uri, timeout: FiniteDuration): Route
Proxies a single request to a destination URI.
Proxies a single request to a destination URI. The response in not streamed, but converted to a strict entity with a set timeout.
- uri
the target URI
- timeout
maximum time to wait for the full response.
- returns
a route that handles requests by proxying them to the given URI.
-
def
strictProxySingleToUnmatchedPath(uri: Uri, timeout: FiniteDuration): Route
Proxies a single request to a destination base URI.
Proxies a single request to a destination base URI. The target URI is created by concatenating the base URI with the unmatched path. The response in not streamed, but converted to a strict entity with a set timeout.
- uri
the target base URI
- timeout
maximum time to wait for the full response.
- returns
a route that handles requests by proxying them to the given URI.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )