|
@@ -8,8 +8,14 @@ class FileDownloader {
|
|
|
|
|
|
async load(url, callback) {
|
|
|
let errMes = '';
|
|
|
+ const options = {
|
|
|
+ encoding: null,
|
|
|
+ headers: {
|
|
|
+ 'user-agent': 'Mozilla/5.0 (X11; HasCodingOs 1.0; Linux x64) AppleWebKit/637.36 (KHTML, like Gecko) Chrome/70.0.3112.101 Safari/637.36 HasBrowser/5.0'
|
|
|
+ }
|
|
|
+ };
|
|
|
|
|
|
- const response = await got(url, {method: 'HEAD'});
|
|
|
+ const response = await got(url, Object.assign({}, options, {method: 'HEAD'}));
|
|
|
|
|
|
let estSize = 0;
|
|
|
if (response.headers['content-length']) {
|
|
@@ -17,7 +23,7 @@ class FileDownloader {
|
|
|
}
|
|
|
|
|
|
let prevProg = 0;
|
|
|
- const request = got(url, {encoding: null}).on('downloadProgress', progress => {
|
|
|
+ const request = got(url, options).on('downloadProgress', progress => {
|
|
|
if (progress.transferred > maxDownloadSize) {
|
|
|
errMes = 'file too big';
|
|
|
request.cancel();
|