

JavaScriptを使って、Downloadされるファイルの保存場所を指定したいのですがどうすればいいのでしょうか?

Downloadされたものが保存されるディレクトリが、ブラウザなどによって~/downloadに設定されていたとしても、それを無視して~/moviesに保存させたいと考えています。

FileSystem APIもありますがwebkitしか対応していません。  
何か他に良い方法はあるのでしょうか?


CC BY-SA 3.0
2015-08-17T11:49:09.900
14530
2015-08-17T16:59:53.540
2015-08-17T14:44:17.160
5246
5246
question
javascript
JavaScriptでダウンロードされるファイルの保存場所を指定する


  * 特に起動オプションや about:config を弄らせることなく
  * 拡張機能やChrome/Firefox OSでもなく
  * http(s)スキーム上のJavascriptから

ということで言えば、今のところ存在しないと思います。その辺がなんとかなるなら方法はあるみたいです。ただChromeに関しては「NPAPI使うしかないんじゃない？」程度の情報しか見つかりませんでした。

  * [JavaScriptからローカルファイルを作成する方法まとめ - あらびき日記](http://d.hatena.ne.jp/a_bicky/20110718/1311027391)
  * [Device Storage API - Web API インターフェイス | MDN](https://developer.mozilla.org/ja/docs/Web/API/Device_Storage_API)
  * [javascript - How do I use OS.File.open? - Stack Overflow](https://stackoverflow.com/questions/19673743/how-do-i-use-os-file-open)

それと、FileSystem
APIはユーザーのファイルシステムに自由にアクセスできるものではなく、AndroidやiOSのように、アプリごとにサンドボックス化された仮想ファイルシステムにアクセスするものです。

> 初めて requestFileSystem() を呼び出したときに、そのアプリケーション用の新しいストレージが作成されます。このファイル
> システムはサンドボックス化されていることに注意してください。つまり、ウェブ
> アプリケーションは他のアプリケーションのファイルにアクセスできません。また、ユーザーのハード ドライブ上にある任意のフォルダ（マイ ピクチャ、マイ
> ドキュメントなど）との間で読み取りや書き込みを行うこともできません。  
>  \--- <http://www.html5rocks.com/ja/tutorials/file/filesystem/> より引用

用途とAPIから想像するに、実際のファイルシステムを使わずSQLite等をストレージにする可能性もあるのではないでしょうか。


CC BY-SA 3.0
2015-08-17T16:59:53.540
14543
2015-08-17T16:59:53.540
2017-05-23T12:38:55.250
-1
8000
14530
answer