ホスト上で指定URLからファイルをダウンロードする
OS に元々付属しているツールでネットワーク上のファイルをダウンロードする。
あるいは、何らかの方法でブートストラップとなるコードをインストールして、そこからダウンロードをする。
当然ながら、以下の場合には実現不可能となる。
ネットワーク接続できない。
インストールが制限されている。
Windows
PowerShell を使うことでファイルをダウンロードすることができる。
Invoke-WebRequest を使う方法 (PowerShell 3.0 以降)
code:download.ps1
WebClient を使う方法
1ステップごとに分けているが、まとめてもよい。
code:download_by_webclient.ps1
$client = New-Object System.Net.WebClient
$file = Split-Path $uri.AbsolutePath -Leaf
$savepath = Join-Path "C:\Users\example\" $file)
$client.DownloadFile($uri, $savepath)
curl を使う方法
-O ファイル名としてそのまま使用する。
-L リダイレクトされても追従する。
code:curl.sh
wget を使う方法
code:wget.sh
JavaScript (ブラウザ)
XMLHttpRequest を使う。API の名前とは異なり、HTTP(HTTPS) でリクエスト可能なデータはどの種別でも読み出せる。
fetch API を使う。(推奨)
Node.js
昔は request モジュールを使用していた