Isang maikling Groovy fetch sa pamamagitan ng proxy
Ipasa ang mga property ng proxy sa Groovy process na gumagawa ng pag-download ng URL, may hangganang paghihintay sa koneksyon at pagbasa.
Para sa isang Groovy script na gumagamit ng HTTP URL na koneksyon ng JDK, ibigay ang proxy kapag sinisimulan ang prosesong iyon:
groovy -Dhttp.proxyHost=proxy.example -Dhttp.proxyPort=8080 fetch.groovy
Ang isang maliit na fetch.groovy ay makakabasa pagkatapos ng isang text resource:
def url = new URL('http://example.com/')
println url.getText(connectTimeout: 5000, readTimeout: 10000)
Ang endpoint ay halimbawa lamang; palitan ito ng kandidatong hindi authenticated mula sa listahan ng HTTP proxy para sa pampublikong pagkuha ng text na HTTP na ito. Ang property ng host ay may hostname, at ang port ay sariling property. Para sa destinasyong HTTPS, i-configure ang https.proxyHost at https.proxyPort para sa endpoint na inaasahang magdadala nito.
Ang -D ay tumutukoy ng system property ng JVM; hindi ito pagtatalaga ng environment variable ng shell. Ilagay ang mga opsyon sa Groovy invocation na nagpapatakbo ng script na ito. Ang hiwalay na paglunsad mula sa IDE o serbisyo ay makapagsisimula ng ibang proseso na may ibang halaga.
Kinokolekta ng getText ang tugon sa isang string. Angkop ito sa maliit na pagkuha ng text; ang malaking download ay nangangailangan ng streaming kaysa hawakan ang buong resulta sa memorya.