どう書く?org : HTTPでGET その2

original page : http://ja.doukaku.org/113/

HTTPでGET その2

前回のお題
http://ja.doukaku.org/18/

HTTPで指定されたURLをGETするコードを書いてください。
URLは「http://ja.doukaku.org/feeds/comments/」とします。

ただし
Proxyサーバを経由してGETしてください。
タイムアウトを1秒に設定してください。
 (デフォルトが1秒でも、1秒に変更してください)
タイムアウトを十分に小さくした場合、GETが失敗することを確認してください。

もしOSに依存する場合はそのOS名のタグを、 依存しない場合は「OS非依存」というタグをつけてください。
わからなければつけなくても構いません。

#7112

original page : http://ja.doukaku.org/comment/7112/

タイムアウトはtimeoutというオプション、プロキシサーバーはhttp_proxyという環境変数でそれぞれ指定します。

http_proxyは、起動後初回のダウンロード処理を実行する前に、一度だけ設定可能です。その後は設定可・不可の切り替えはできますが、プロキシサーバーのホストを変更することはできません(These
environment variables must be set before the download code is first
used: they cannot be altered later by calling Sys.setenv)。

タイムアウトを1秒にすると、大抵のGETは失敗してしまうみたいですね。

http.get <- function(url, proxy='', timeout.value=1){
  options(timeout=timeout.value)
  Sys.setenv(http_proxy=proxy)
  readLines(url)
}