Fún ìbéèrè HTTPS ti Akka HTTP, ṣètò client transport rẹ̀ kí CONNECT lè wáyé nípasẹ̀ forward proxy:

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)

Ohun èlò náà pèsè ActorSystem tí ó wà tẹ́lẹ̀ gẹ́gẹ́ bí system, ó sì pa ìgbésí-ayé stream àti response-entity mọ́ bí ó ti wà. Lo tàbí kọ̀ response entity tí ó padà wá bí ó bá yẹ kí ìsopọ̀ lè di ìdásílẹ̀.

Orúkọ httpsProxy níbí ń tọ́ka sí dídá ìsopọ̀ ibi-àfojúsùn HTTPS nípasẹ̀ HTTP CONNECT proxy. Kì í ṣe ìtọ́ni láti ṣí TLS session sí proxy listener fúnra rẹ̀.

Fi àwọn ètò tí a ti ṣàtúnṣe ránṣẹ́ sínú ìbéèrè tàbí pool tí ó ń fi ìrìnàjò ránṣẹ́. Dídá ètò lẹ́gbẹ̀ẹ́ ìpè tí ó ń lo ìṣètò pool mìíràn kò yí ìpè yẹn padà.

Akka ṣe àkọsílẹ̀ ọ̀nà yìí fún àwọn ìbéèrè HTTPS. Pa ibi-àfojúsùn mọ́ gẹ́gẹ́ bí HTTPS URI gidi rẹ̀. HTTP endpoint láti inú àkójọ HTTP proxy jẹ́ olùdíje fún ọ̀nà náà nígbà tí ó bá gba ibi-àfojúsùn CONNECT tí ó pọn dandan. Àpẹẹrẹ bindFlow forwarding ní ẹ̀gbẹ́ server ṣẹ̀dá iṣẹ́ HTTP mìíràn, ó sì dáhùn ìṣòro ìkọ́ mìíràn.

Àwọn àpilẹ̀kọ tó jọra