FTPから画像ファイルを取得
サンプル03で今回の目的は達成できましたが、他のFTP処理についても少し触れておきましょう。ここまでは画像をサーバーに転送(put/アップロード)しましたが、逆にサーバーから画像ファイルを取得(get/ダウンロード)することもできます。
サーバーから画像を取得するにはFTPオブジェクトのget()メソッドを使います。第1引数にサーバー側のファイル名、第2引数にローカルディスクの保存先が設定されたファイルオブジェクトを指定します。
サンプル04はサーバー上にある「sample.jpg」をダウンロードし、ホームフォルダに「asc_sample.jpg」という名前で保存します。
●サンプル04
#target "Bridge"
// Http, Ftpが使えるようにする
if ( !ExternalObject.webaccesslib ) {
ExternalObject.webaccesslib = new ExternalObject("lib:webaccesslib");
}
// FTPサーバー名やユーザー名の設定
var url = "ftp://●●●●●●●●●";
var username = "asc"; // ユーザー名
var pw = "ascii"; // パスワード
var localfile = new File("~/asc_sample.jpg"); // 保存先のファイルパス
var filename = "sample.jpg"; // 転送先のファイル名
// FTPサーバーへ接続
var ftp = new FtpConnection(url);
ftp.username = username; // ユーザー名
ftp.password = pw; // パスワード
ftp.binary = true; // バイナリモード
var flag = ftp.open();
if (flag == true){ // 正常に接続できた場合に処理
ftp.get(filename, localfile); // ファイルを取得
ftp.close();
}else{
alert("FTPサーバーに接続できませんでした");
}
localfile.close();
●●●●●●●●●:FTPサーバー名を入れて下さい