Transporti CONNECT i Akka HTTP për kërkesat HTTPS
Lidh transportin e proxy-t me cilësimet e pool-it të lidhjeve dhe kalo këto cilësime te kërkesa që ka nevojë për tunelin.
Për një kërkesë HTTPS në Akka HTTP, konfiguro transportin e klientit që CONNECT të vendoset përmes forward proxy:
import java.net.InetSocketAddress
import akka.http.scaladsl.{ClientTransport, Http}
import akka.http.scaladsl.model.HttpRequest
import akka.http.scaladsl.settings.ConnectionPoolSettings
val transport = ClientTransport.httpsProxy(
InetSocketAddress.createUnresolved("proxy.example", 8080))
val settings = ConnectionPoolSettings(system)
.withConnectionSettings(_.withTransport(transport))
val response = Http().singleRequest(
HttpRequest(uri = "https://example.com/"),
settings = settings)
Aplikacioni furnizon ActorSystem-in ekzistues si system dhe mban ciklin e zakonshëm të jetës të stream-it dhe të response-entity. Konsumo ose hidh response-entity-n e kthyer sipas rastit, që lidhja të mund të lirohet.
Emri httpsProxy këtu i referohet vendosjes së një lidhjeje me destinacionin HTTPS përmes një proxy HTTP CONNECT. Nuk është udhëzim për të hapur një sesion TLS me vetë listener-in e proxy-t.
Kalo cilësimet e personalizuara te kërkesa ose pool-i që dërgon trafikun. Ndërtimi i cilësimeve pranë një thirrjeje që përdor një konfigurim tjetër pool-i nuk e ndryshon atë thirrje.
Akka e dokumenton këtë transport për kërkesat HTTPS. Mbaj destinacionin si URI-n e tij të vërtetë HTTPS. Një endpoint HTTP nga lista e proxy-ve HTTP është kandidat për transportin kur lejon destinacionin CONNECT të kërkuar. Një shembull bindFlow forwarding në anën e serverit krijon një shërbim tjetër HTTP dhe i përgjigjet një problemi tjetër ndërtimi.