私は最初の実行時にWebからAPIを介してファイル(画像jpg/png)をダウンロードし、ローカルに保存する必要があるアプリに取り組んでいます利用可能なアップデートがある場合は、APIを介して新しいデータをダウンロードします)。
これがデスクトップアプリの動作方法としては非常に一般的でないことは承知していますが、主な目的は、デスクトップアプリのデータをWebアプリと同期させることです。
これまでのところ、ユーザーがインターネットに接続されているかどうかを確認するnpmプラグインrequest
( link )を見つけました。
Electronアプリ内でファイルをダウンロードして保存できるかどうかはわかりません(アプリの外からは見えません)?そのような目標を達成するために必要なプラグイン/ツールを推奨できますか?
どんな助けでもありがたいです。
さて、あなたは this answer からのスニペットを使用して、それをノードの方法で行うことができます。
var http = require('http');
var fs = require('fs');
var app = require('remote').require('app')
var file = fs.createWriteStream(app.getDataPath() + "externalFiles/file.jpg");
var request = http.get("http://url-to-api/some-image.jpg", function(response) {
response.pipe(file);
});
そして、あなたはApp Data Path
ファイルを保存します。もちろん、URLからファイルの名前を解析する必要があります。これで準備が整いました。
Webコンテンツを使用することもできます
https://github.com/atom/electron/blob/master/docs/api/web-contents.md
その後、アプリはブラウザとして機能し、オフラインサポートをローカルストレージまたはその他の技術を使用して追加する必要があります。
UPDATE:
今日のように、これのようにこれを助けることができるいくつかのパッケージがあります https://github.com/sindresorhus/electron-dl