Bulundu:
<button onclick='myUrlSaveAs("http://www.example.com/path/to/file.jpg")'>Save As</button>
senin Javascript dosyasında: Cevabınız için
// Include in the render side
var elerem = require('electron').remote;
var dialog = elerem.dialog;
var app = elerem.app;
var http = require('http');
var fs = require('fs');
var path = require('path');
function myUrlSaveAs(remoteUrl){
// app.getPath("desktop") // User's Desktop folder
// app.getPath("documents") // User's "My Documents" folder
// app.getPath("downloads") // User's Downloads folder
var toLocalPath = path.resolve(app.getPath("desktop"), path.basename(remoteUrl)
var userChosenPath = dialog.showSaveDialog({ defaultPath: toLocalPath });
if(userChosenPath){
download (remoteUrl, userChosenPath, myUrlSaveAsComplete)
}
}
function myUrlSaveAsComplete(err){
alert("done");
}
function download (url, dest, cb) {
var file = fs.createWriteStream(dest);
var request = http.get(url, function(response) {
response.pipe(file);
file.on('finish', function() {
file.close(cb); // close() is async, call cb after close completes.
});
}).on('error', function(err) { // Handle errors
fs.unlink(dest); // Delete the file async. (But we don't check the result)
if (cb) cb(err.message);
});
};
teşekkür ederiz. Çalışmak için bu yöntemi alamadım. Sanırım, ana süreçte kütüphanecilere sürecin işleyişine ihtiyaç duyuyordum. Orijinal yaklaşımım tüm düğüm modüllerimi öldürüp yeniden yükledikten sonra çalıştı. Soruna neyin neden olduğuna tam olarak emin değilim, ama şimdi çalışıyor! – djsosofresh