electron/docs-translations/jp/api/download-item.md
2016-10-11 22:37:32 -07:00

101 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# DownloadItem
`DownloadItem`は、Electronでアイテムのダウンロードを示すEventEmitterです。 `Session`モジュールの`will-download`イベントで使用され、ダウンロードしたアイテムをコントロールすることができます。
```javascript
// In the main process.
const {BrowserWindow} = require('electron')
let win = new BrowserWindow()
win.webContents.session.on('will-download', (event, item, webContents) => {
// Set the save path, making Electron not to prompt a save dialog.
item.setSavePath('/tmp/save.pdf')
item.on('updated', (event, state) => {
if (state === 'interrupted') {
console.log('Download is interrupted but can be resumed')
} else if (state === 'progressing') {
if (item.isPaused()) {
console.log('Download is paused')
} else {
console.log(`Received bytes: ${item.getReceivedBytes()}`)
}
}
})
item.once('done', (event, state) => {
if (state === 'completed') {
console.log('Download successfully')
} else {
console.log(`Download failed: ${state}`)
}
})
})
```
## イベント
### イベント: '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`を返します。