Akka HTTP HTTPS-päringu jaoks seadistage kliendi transport looma CONNECT edastuspuhverserveri kaudu:

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)

Rakendus annab oma olemasoleva ActorSystemi system-na ja säilitab tavapärase voo ja vastuse-olemi elutsükli. Tarbige või visake tagastatud vastuse-olem sobivalt ära, et ühenduse saaks vabastada.

Nimi httpsProxy tähistab siin HTTPS-sihtkoha ühenduse loomist HTTP CONNECT-puhverserveri kaudu. See ei ole juhis avada TLS-seanss puhverserveri kuulaja endaga.

Edastage kohandatud seaded päringule või basseinile, mis liikluse saadab. Kui seaded luuakse kutse kõrval, mis kasutab teist basseini konfiguratsiooni, jääb see kutse muutmata.

Akka dokumenteerib selle transpori HTTPS-päringute jaoks. Hoidke sihtkoht selle tegeliku HTTPS URI-na. HTTP-puhverserverite loendist pärit HTTP-lõpp-punkt on transpori jaoks kandidaat, kui see lubab nõutavat CONNECT-sihtkohta. Serveripoolne bindFlow-edastuse näide loob teise HTTP-teenuse ja vastab teistsugusele ülesehitusprobleemile.

Seotud artiklid