Elixir Tesla: pengesahan proksi dengan penyesuai Mint
Letakkan pengepala Basic dalam pilihan sambungan penyesuai Mint supaya ia boleh mengiringi CONNECT sebelum permintaan destinasi.
basic = "Basic " <> Base.encode64(proxy_user <> ":" <> proxy_password)
client = Tesla.client([], {Tesla.Adapter.Mint, [
proxy: {:http, "proxy.example", 8080, []},
proxy_headers: [{"proxy-authorization", basic}]
]})Gunakan klien Tesla ini untuk operasi yang dimaksudkan oleh aplikasi. URL-nya kekal sebagai destinasi perkhidmatan; proxy_user dan proxy_password merujuk kepada akaun pada perantara.
Mint menggunakan proxy_headers pada CONNECT bagi proksi terowong, atau menggabungkan pengepala itu dengan permintaan dalam mod pemajuan. Middleware Tesla umum bagi pengepala destinasi bukan input sambungan pada peringkat lebih awal itu.
Contoh ini menggunakan Basic. Base64 ialah bentuk perwakilan, bukan penyulitan; perlindungannya bergantung pada pengangkutan sambungan proksi.
Kekalkan pilihan ini dengan penyesuai Mint. Bertukar kepada Finch, Hackney atau penyesuai lain memerlukan antara mukanya sendiri, dan Authorization destinasi tetap pertukaran pengesahan yang berlainan.