Verwenden Sie die eigene Basic-Proxy-Option von open-uri für das Zwischenkonto:

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 }

Ersetzen Sie den Dokumentations-Endpunkt und beziehen Sie die Kontowerte aus der vorgesehenen Secret-Quelle. Legen Sie das Passwort nicht in einer URL ab, die später eine Ausnahme oder ein Supportbericht ausgeben könnte.

OpenRead-OptionVerwendung
proxy_http_basic_authenticationProxy-Adresse und deren Basic-Benutzername/Passwort.
proxyProxy-Auswahl ohne diese kombinierte authentifizierte Option; werden beide angegeben, tritt ein Argumentfehler auf.
http_basic_authenticationKonto des Zielservers.
proxy: nilMachen Sie dieses Lesen trotz Umgebungsvorgaben direkt.

Ohne explizite Proxy-Option kann open-uri schemaabhängige Proxy-Umgebungsvariablen verwenden. Die authentifizierte Option enthält ihren Endpunkt bereits; sie braucht keinen zweiten proxy-Wert.

Diese Schnittstelle verarbeitet Basic-Proxy-Authentifizierung. Ein Dienst, der einen anderen Mechanismus verlangt, benötigt einen kompatiblen Client oder eine freigegebene Integration. Lassen Sie die HTTPS-Prüfung aktiviert und prüfen Sie dann Status/Inhalt: Eine funktionierende Proxy-Anmeldung belegt nicht, dass das Ziel die erwartete Ressource zurückgegeben hat.

Ähnliche Artikel