AutoHotkey 2 kann das WinHttpRequest-COM-Objekt von Windows für eine Anfrage über einen expliziten Proxy verwenden:

request := ComObject("WinHttp.WinHttpRequest.5.1")
request.SetTimeouts(5000, 5000, 10000, 20000)
request.SetProxy(2, "proxy.example.net:8080", "localhost")
request.Open("GET", "https://example.net/status", false)
request.Send()
MsgBox request.Status " " request.StatusText

2 wählt die übergebene Proxykonfiguration. Für die gezeigte öffentliche HTTPS-Prüfung liefert die HTTP-Proxy-Liste mögliche Host- und Portwerte des Vermittlers, wenn öffentliche Routen erlaubt sind und keine Proxy-Anmeldedaten konfiguriert sind. Das optionale dritte Argument ist die Umgehungsliste; hier geht localhost direkt.

Das abschließende false in Open wählt eine synchrone Anfrage. Dieses kleine Skript wartet auf den Abschluss, bevor es den Status liest. Eine länger laufende Desktop-Automatisierung sollte diese Wartezeit in ihrem Interaktionsablauf berücksichtigen.

Wenn der Proxy Anmeldedaten verlangt, setze sie nach Open und vor Send:

request.SetCredentials(proxyUser, proxyPassword, 1)

Die Anwendung liefert diese beiden Variablen. Das abschließende Flag 1 wählt Proxy-Anmeldedaten. Flag 0 wählt Anmeldedaten für den Zielserver.

Nach einer erfolgreichen Textantwort enthält request.ResponseText den zurückgegebenen Text. Für einen Binär-Download nutze ResponseBody und einen passenden binären Schreibweg, statt diese Bytes durch eine Textkonvertierung zu schicken.

Ähnliche Artikel