Comments (1)
this is due to the default maxLength
option from the module used to sanitise filename on save: https://github.com/sindresorhus/filenamify#maxlength
if the filename is longer than 100 characters, the module will truncate it. download
does not seems to have options to update this default behaviour.
You can use this simple snippet as a replacement:
const fs = require('fs')
const https = require('https')
async function download(url, targetFile) {
return new Promise((resolve, reject) => {
https
.get(url, (response) => {
const code = response.statusCode ?? 0
if (code >= 400) {
return reject(new Error(response.statusMessage))
}
const fileWriter = fs
.createWriteStream(targetFile)
.on('finish', () => {
resolve({})
})
response.pipe(fileWriter)
})
.on('error', (error) => {
reject(error)
})
})
}
await download('http://mywebsite.com/path/to/remotefile.gif', `${__dirname}/out/remotefile.gif`)
from download.
Related Issues (20)
- Trst
- add already authorization but warn a message is Error: Basic authentication must be done with the `auth` option
- Upgrade to latest version of got for better stream handling HOT 2
- Download stop - no event fired
- filename has no effect if extract is enabled HOT 1
- Option to skip downloading if the file already exists HOT 7
- [node-downloader-helper] A very good alternative to this dead package HOT 4
- Knowing when decompress finished? Use `download().on('end', () => { }) ` to judge?
- High npm vulnerability HOT 2
- Open vunerability with the decompress package and decompress-tar
- Trying to get in touch regarding a security issue
- RangeError: Invalid string length with stream
- GotError [RequestError]: connect ETIMEOUT error to donwload pdf files
- High Vulnerability: Regular Expression Denial of Service in trim-newlines
- Npm audit failure via older version of got HOT 5
- Security Vulnerability: CVE-2022-33987 - got dependency HOT 1
- support ES Module HOT 1
- Progress bar and current % of download (useful for big files) HOT 5
- Replace got with fetch? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from download.