Ein kurzer Groovy-Abruf über einen Proxy
Übergeben Sie Proxy-Eigenschaften an den Groovy-Prozess, der einen URL-Download ausführt, mit begrenzten Wartezeiten für Verbindung und Lesen.
Für ein Groovy-Skript, das die HTTP-URL-Verbindung des JDK nutzt, geben Sie den Proxy beim Start dieses Prozesses an:
groovy -Dhttp.proxyHost=proxy.example -Dhttp.proxyPort=8080 fetch.groovy
Ein kleines fetch.groovy kann dann eine Textressource lesen:
def url = new URL('http://example.com/')
println url.getText(connectTimeout: 5000, readTimeout: 10000)
Der Endpunkt ist nur ein Beispiel; ersetzen Sie ihn durch einen nicht authentifizierten Kandidaten aus der HTTP-Proxy-Liste für diesen öffentlichen HTTP-Textabruf. Die Host-Eigenschaft enthält einen Hostnamen, und der Port ist eine eigene Eigenschaft. Für ein HTTPS-Ziel konfigurieren Sie https.proxyHost und https.proxyPort für den Endpunkt, der es tragen soll.
-D definiert eine JVM-Systemeigenschaft; es ist keine Zuweisung einer Shell-Umgebungsvariable. Setzen Sie die Optionen an den Groovy-Aufruf, der dieses Skript ausführt. Ein separater IDE-Start oder Dienst kann einen anderen Prozess mit anderen Werten starten.
getText sammelt die Antwort in einer Zeichenkette. Es eignet sich für einen kleinen Textabruf; ein großer Download erfordert Streaming, statt das gesamte Ergebnis im Speicher zu halten.