Commit e2fad02e authored by SpinShare's avatar SpinShare

added http support

parent d116959e
...@@ -2,6 +2,7 @@ const { app, protocol, BrowserWindow, ipcMain, dialog } = require('electron'); ...@@ -2,6 +2,7 @@ const { app, protocol, BrowserWindow, ipcMain, dialog } = require('electron');
const { createProtocol } = require('vue-cli-plugin-electron-builder/lib'); const { createProtocol } = require('vue-cli-plugin-electron-builder/lib');
const isDevelopment = process.env.NODE_ENV !== 'production'; const isDevelopment = process.env.NODE_ENV !== 'production';
const fs = require('fs'); const fs = require('fs');
const http = require('http');
const https = require('https'); const https = require('https');
const path = require('path'); const path = require('path');
const uniqid = require('uniqid'); const uniqid = require('uniqid');
...@@ -160,13 +161,25 @@ ipcMain.on("getDeeplink", (event) => { ...@@ -160,13 +161,25 @@ ipcMain.on("getDeeplink", (event) => {
function download(url, fileName, cb) { function download(url, fileName, cb) {
let dest = path.join(app.getPath('temp'), fileName + ".zip"); let dest = path.join(app.getPath('temp'), fileName + ".zip");
let file = fs.createWriteStream(dest); let file = fs.createWriteStream(dest);
let request = https.get(url, function(response) { if(new URL(url).protocol == "https:") {
response.pipe(file); let request = https.get(url, function(response) {
file.on('finish', function() { response.pipe(file);
file.close(cb(null, dest)); // async call of the callback file.on('finish', function() {
}); file.close(cb(null, dest)); // async call of the callback
}).on('error', function(err) { // Handle errors });
fs.unlink(dest); // Delete the file async. (But we don't check the result) }).on('error', function(err) { // Handle errors
if (cb) cb(err.message, dest); fs.unlink(dest); // Delete the file async. (But we don't check the result)
}); if (cb) cb(err.message, dest);
});
} else {
let request = http.get(url, function(response) {
response.pipe(file);
file.on('finish', function() {
file.close(cb(null, dest)); // async call of the callback
});
}).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, dest);
});
}
}; };
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment