CONNECT-flutningurin hjá Akka HTTP til HTTPS-fyrispurnir
Set proxyflutningin á sambands-pool-innstillingarnar og send tær innstillingarnar við fyrispurninginum, sum tørvar tunnilin.
Fyri eina Akka HTTP HTTPS-fyrispurn skalt tú stilla klientflutningin soleiðis, at hann stovnar CONNECT gjøgnum frammanfyri-proxyið:
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)
Forritið veitir verandi ActorSystem sítt sum system og varðveitir vanliga lívsring streymisins og svar-eindarinnar. Nýt ella kastað tí afturgivna svar-eindini eftir tørvi, so sambandið kann loysast.
Navnið httpsProxy merkir her at stovna eitt HTTPS-málsamband gjøgnum eitt HTTP CONNECT-proxy. Tað er ikki eitt boð um at opna eina TLS-setu móti sjálvum proxylurarinum.
Send tær tillagaðu innstillingarnar við fyrispurninginum ella poolinum, sum sendir ferðsluna. At byggja innstillingar við síðuna av einum kalli, sum brúkar aðra pool-stilliseting, letur tað kallið óbroytt.
Akka skjalar henda flutningin til HTTPS-fyrispurnir. Halt málið sum veruligt HTTPS URI tess. Eitt HTTP-endapunkt úr HTTP-proxy-listanum er ein møguleiki til flutningin, tá ið tað loyvir tørvandi CONNECT-málið. Eitt bindFlow-framsendingardømi á servarapartinum stovnar eina aðra HTTP-tænastu og svarar einum øðrvísi byggingartrupulleika.