HTTPS сұраулары үшін Akka HTTP-ның CONNECT тасымалы
Прокси тасымалын қосылымдар пулының параметрлеріне тіркеп, сол параметрлерді туннель қажет сұрауға беріңіз.
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 атауы мұнда HTTP CONNECT проксиі арқылы HTTPS межелі қосылымды орнатуды білдіреді. Бұл прокси тыңдаушысының өзімен TLS сессиясын ашуға нұсқау емес.
Реттелген параметрлерді трафикті жіберетін сұрауға немесе пулға беріңіз. Басқа пул конфигурациясын пайдаланатын шақырудың қасында параметрлер құру сол шақыруды өзгеріссіз қалдырады.
Akka бұл тасымалды HTTPS сұраулары үшін құжаттайды. Межені оның нақты HTTPS URI ретінде сақтаңыз. HTTP прокси тізімінен алынған HTTP соңғы нүктесі қажетті CONNECT межесіне рұқсат бергенде тасымал үшін кандидат болады. Сервер жағындағы bindFlow қайта жіберу мысалы басқа HTTP қызметін жасайды және өзге құрылыс мәселесіне жауап береді.