Ruby open-uri: mengonfigurasi autentikasi Basic proxy
Gunakan opsi autentikasi proxy khusus open-uri tanpa mencampurnya dengan kredensial tujuan atau nilai default lingkungan.
Gunakan opsi Basic proxy khusus open-uri untuk akun perantara:
require 'open-uri'
body = URI.open(
'https://example.com/',
proxy_http_basic_authentication: [
'http://203.0.113.10:8080',
ENV.fetch('PROXY_USER'),
ENV.fetch('PROXY_PASSWORD')
],
open_timeout: 5,
read_timeout: 10
) { |response| response.read }Ganti endpoint dokumentasi dan ambil nilai akun dari sumber rahasia yang dimaksud. Jangan menaruh kata sandi di URL yang nantinya dapat dicetak oleh pengecualian atau laporan dukungan.
| Opsi OpenRead | Kegunaan |
|---|---|
proxy_http_basic_authentication | Alamat proxy dan nama pengguna/kata sandi Basic-nya. |
proxy | Pemilihan proxy tanpa opsi terautentikasi gabungan itu; memberikan keduanya memicu kesalahan argumen. |
http_basic_authentication | Akun server tujuan. |
proxy: nil | Buat pembacaan ini langsung meskipun ada nilai default lingkungan. |
Tanpa opsi proxy eksplisit, open-uri dapat memakai variabel lingkungan proxy khusus skema. Opsi terautentikasi sudah menyertakan endpoint-nya; opsi itu tidak perlu nilai proxy kedua.
Antarmuka ini menangani autentikasi Basic proxy. Layanan yang memerlukan mekanisme lain butuh klien yang kompatibel atau integrasi yang disetujui. Biarkan verifikasi HTTPS aktif, lalu periksa status/konten sebagaimana mestinya: login proxy yang berhasil tidak membuktikan bahwa tujuan mengembalikan sumber daya yang diharapkan.