Packages

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.

Linear Supertypes
ClientIPDirectives, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ProxySupport
  2. ClientIPDirectives
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. class Proxy extends Logging

    A representation of a reverse proxy for a remote host.

    A representation of a reverse proxy for a remote host. This class internally materializes a flow that is continuously active and ready to route incoming requests.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. def optionalClientIP: Directive1[Option[RemoteAddress]]

    Directive extracting the remote address of the client from the X-Forwarded-For, Remote-Address or X-Real-IP headers (in that order).

    Directive extracting the remote address of the client from the X-Forwarded-For, Remote-Address or X-Real-IP headers (in that order).

    Definition Classes
    ClientIPDirectives
  16. def optionalRawClientIP: Directive1[Option[String]]

    Directive extracting the raw IP of the client from either the X-Forwarded-For, Remote-Address or X-Real-IP headers (in that order).

    Directive extracting the raw IP of the client from either the X-Forwarded-For, Remote-Address or X-Real-IP headers (in that order).

    Definition Classes
    ClientIPDirectives
  17. 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.

  18. 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.

  19. 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.

  20. 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.

  21. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  22. def toString(): String
    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from ClientIPDirectives

Inherited from AnyRef

Inherited from Any

Ungrouped