የAkka HTTP CONNECT ማጓጓዣ ለHTTPS ጥያቄዎች
የፕሮክሲ ማጓጓዣውን ከግንኙነት ገንዳ ቅንብሮች ጋር ያገናኙ እና እነዚያን ቅንብሮች ቱነሉን ወደሚፈልገው ጥያቄ ያስተላልፉ።
ለAkka HTTP HTTPS ጥያቄ፣ የደንበኛ ማጓጓዣውን CONNECT በፊት ፕሮክሲ በኩል እንዲፈጥር ያዋቅሩ፦
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 ያቀርባል እና የተለመደውን የጅረት እና የምላሽ-አካል ዑደት ይጠብቃል። ግንኙነቱ እንዲለቀቅ የተመለሰውን የምላሽ አካል እንደ አስፈላጊነቱ ይጠቀሙበት ወይም ይጣሉት።
httpsProxy የሚለው ስም እዚህ ማለቱ የHTTPS መዳረሻ ግንኙነትን በHTTP CONNECT ፕሮክሲ በኩል መፍጠር ነው። ወደ ፕሮክሲ አድማጩ ራሱ የTLS ክፍለ ጊዜ እንዲከፈት የሚሰጥ መመሪያ አይደለም።
የተስተካከሉትን ቅንብሮች ትራፊኩን ወደሚልከው ጥያቄ ወይም ገንዳ ያስተላልፉ። ሌላ የገንዳ ውቅር የሚጠቀም ጥሪ አጠገብ ቅንብሮችን መገንባት ያንን ጥሪ ሳይለወጥ ይተወዋል።
Akka ይህን ማጓጓዣ ለHTTPS ጥያቄዎች ያስቀምጣል። መዳረሻውን እንደ እውነተኛው HTTPS URI ያቆዩት። ከየHTTP ፕሮክሲ ዝርዝር የሚመጣ HTTP መጨረሻ ነጥብ አስፈላጊውን CONNECT መዳረሻ ሲፈቅድ ለማጓጓዣው እጩ ነው። የአገልጋይ ጎን bindFlow ማስተላለፊያ ምሳሌ ሌላ HTTP አገልግሎት ይፈጥራል እና የተለየ የግንባታ ችግር ይመልሳል።