Akka HTTP HTTPS അഭ്യർത്ഥനയ്ക്ക്, forward proxy വഴി CONNECT സ്ഥാപിക്കാൻ അതിന്റെ client transport ക്രമീകരിക്കുക:

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)

ആപ്ലിക്കേഷൻ അതിന്റെ നിലവിലുള്ള ActorSystem-നെ system ആയി നൽകുകയും സാധാരണ stream, response-entity ജീവിതചക്രം നിലനിർത്തുകയും ചെയ്യുന്നു. കണക്ഷൻ വിട്ടയക്കാൻ കഴിയുന്ന വിധത്തിൽ തിരികെ വരുന്ന response entity ഉപയോഗിക്കുകയോ ഒഴിവാക്കുകയോ ചെയ്യുക.

ഇവിടെ httpsProxy എന്ന പേര് HTTP CONNECT proxy വഴി HTTPS ലക്ഷ്യസ്ഥാന കണക്ഷൻ സ്ഥാപിക്കുന്നതിനെ സൂചിപ്പിക്കുന്നു. proxy listener-ലേക്ക് തന്നെ TLS സെഷൻ തുറക്കാനുള്ള നിർദ്ദേശമല്ല ഇത്.

ക്രമീകരിച്ച ക്രമീകരണങ്ങൾ ട്രാഫിക് അയക്കുന്ന അഭ്യർത്ഥനയിലേക്കോ pool-ലേക്കോ നൽകുക. മറ്റൊരു pool കോൺഫിഗറേഷൻ ഉപയോഗിക്കുന്ന കോളിന് സമീപം ക്രമീകരണങ്ങൾ നിർമ്മിക്കുന്നത് ആ കോളിനെ മാറ്റുന്നില്ല.

HTTPS അഭ്യർത്ഥനകൾക്കായി Akka ഈ ട്രാൻസ്പോർട്ട് രേഖപ്പെടുത്തുന്നു. ലക്ഷ്യസ്ഥാനം അതിന്റെ യഥാർത്ഥ HTTPS URI ആയി നിലനിർത്തുക. HTTP proxy ലിസ്റ്റിൽ നിന്നുള്ള ഒരു HTTP endpoint, ആവശ്യമായ CONNECT ലക്ഷ്യസ്ഥാനം അനുവദിക്കുമ്പോൾ ട്രാൻസ്പോർട്ടിനുള്ള സ്ഥാനാർത്ഥിയാണ്. സർവർ വശത്തെ bindFlow forwarding ഉദാഹരണം മറ്റൊരു HTTP സേവനം സൃഷ്ടിച്ച് വേറൊരു നിർമ്മാണ പ്രശ്നത്തിന് ഉത്തരം നൽകുന്നു.

അനുബന്ധ ലേഖനങ്ങൾ