basic = "Basic " <> Base.encode64(proxy_user <> ":" <> proxy_password)

client = Tesla.client([], {Tesla.Adapter.Mint, [
  proxy: {:http, "proxy.example", 8080, []},
  proxy_headers: [{"proxy-authorization", basic}]
]})

Fes servir aquest client Tesla per a les operacions previstes de l’aplicació. Els seus URL continuen sent les destinacions dels serveis; proxy_user i proxy_password identifiquen el compte de l’intermediari.

Mint aplica proxy_headers a CONNECT en un proxy de túnel, o fusiona les capçaleres amb les peticions en mode de reenviament. Un middleware genèric de Tesla per a capçaleres de destinació no és aquesta entrada prèvia de connexió.

L’exemple utilitza Basic. Base64 és una representació, no un xifratge; la protecció depèn del transport de la connexió al proxy.

Mantén aquestes opcions amb l’adaptador Mint. Canviar-lo per Finch, Hackney o un altre adaptador requereix la seva interfície, i l’Authorization de destinació continua sent un altre intercanvi d’autenticació.

Articles relacionats