プロキシ経由の短い Groovy 取得
URL のダウンロードを行う Groovy プロセスにプロキシのプロパティを渡し、接続と読み取りの待ち時間を制限します。
JDK の HTTP URL 接続を使う Groovy スクリプトでは、そのプロセスの起動時にプロキシを指定します:
groovy -Dhttp.proxyHost=proxy.example -Dhttp.proxyPort=8080 fetch.groovy
小さな fetch.groovy は、そのあとテキストリソースを読めます:
def url = new URL('http://example.com/')
println url.getText(connectTimeout: 5000, readTimeout: 10000)
エンドポイントはあくまで例です。この公開 HTTP テキスト取得には、HTTP プロキシ一覧から認証不要の候補に置き換えてください。ホストのプロパティはホスト名を持ち、ポートは独立したプロパティです。HTTPS の宛先には、それを運ぶエンドポイント向けに https.proxyHost と https.proxyPort を設定します。
-D は JVM のシステムプロパティを定義します。シェルの環境変数への代入ではありません。このスクリプトを実行する Groovy の呼び出しにオプションを付けます。別の IDE 起動やサービスは、異なる値で別のプロセスを開始できます。
getText はレスポンスを文字列にまとめます。小さなテキスト取得に向きます。大きなダウンロードでは、結果全体をメモリに保持せずストリーミングする必要があります。