electron/docs-translations/jp/api/download-item.md

93 lines
3.4 KiB
Markdown
Raw Normal View History

2016-01-19 08:23:17 +00:00
# DownloadItem
`DownloadItem`は、Electronでアイテムのダウンロードを示すEventEmitterです。 `Session`モジュールの`will-download`イベントで使用され、ダウンロードしたアイテムをコントロールすることができます。
```javascript
// In the main process.
win.webContents.session.on('will-download', function(event, item, webContents) {
// Set the save path, making Electron not to prompt a save dialog.
item.setSavePath('/tmp/save.pdf');
console.log(item.getMimeType());
console.log(item.getFilename());
console.log(item.getTotalBytes());
item.on('updated', function() {
console.log('Received bytes: ' + item.getReceivedBytes());
});
item.on('done', function(e, state) {
if (state == "completed") {
console.log("Download successfully");
} else {
console.log("Download is cancelled or interrupted that can't be resumed");
}
});
```
## イベント
### イベント: 'updated'
`downloadItem`が更新されたときに出力されます。
### イベント: 'done'
* `event` Event
* `state` String
* `completed` - ダウンロードが成功で完了
* `cancelled` - ダウンロードをキャンセル
* `interrupted` - ファイルサーバーとの接続が切れてエラー
ダウンロードが終了状態になったときに出力されます。終了状態には、ダウンロードの完了、ダウンロードのキャンセル(`downloadItem.cancel()`経由)、レジュームできないダウンロードの中断などです。
## メソッド
`downloadItem`オブジェクトは次のメソッドを持ちます:
### `downloadItem.setSavePath(path)`
* `path` String - ダウンロードアイテムの保存ファイルパスを設定します。
APIはセッションの`will-download`コールバック関数のみで提供されます。API経由で保存パスを設定しなかった場合、Electronは保存パスを決めるための元のルーチン通常は保存ダイアログを使用します。
### `downloadItem.pause()`
ダウンロードをポーズします。
### `downloadItem.resume()`
ポーズしたダウンロードを再開します。
### `downloadItem.cancel()`
ダウンロード操作をキャンセルします。
### `downloadItem.getURL()`
どのURLからアイテムをダウンロードするのかを示す`String`を返します。
### `downloadItem.getMimeType()`
mimeタイプを示す`String`を返します。
### `downloadItem.hasUserGesture()`
ダウンロードがユーザージェスチャーを持っているかどうかを示す`Boolean`を返します。
### `downloadItem.getFilename()`
ダウンロードアイテムのファイル名を示す`String`を返します。
**Note:** ファイル名はローカルディスクに実際に保存するものといつも同じとは限りません。ダウンロード保存ダイアログでユーザーがファイル名を変更していると、保存するファイルの実際の名前は異なります。
### `downloadItem.getTotalBytes()`
ダウンロードアイテムの合計バイトサイズを示す`Integer`を返します。
サイズが不明な場合、0を返します。
### `downloadItem.getReceivedBytes()`
ダウンロードしたアイテムの受信バイト数を示す`Integer`を返します。
### `downloadItem.getContentDisposition()`
レスポンスヘッダーからContent-Dispositionを示す`String`を返します。