Fix extension detection

This commit is contained in:
Chocobozzz 2025-02-19 10:45:29 +01:00
parent 017795cf45
commit 451dc9c024
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
2 changed files with 4 additions and 1 deletions

View File

@ -210,6 +210,7 @@ describe('Test syndication feeds', () => {
const res = await makeRawRequest({ url: enclosure['@_url'], expectedStatus: HttpStatusCode.OK_200 })
expect(res.headers['content-type']).to.equal('audio/mp4')
expect(res.headers['content-disposition']).to.not.exist
const alternateEnclosures = xmlDoc.rss.channel.item['podcast:alternateEnclosure']
expect(alternateEnclosures).to.be.an('array')

View File

@ -33,6 +33,7 @@ import {
videosDownloadValidator,
videosGenerateDownloadValidator
} from '../middlewares/index.js'
import { parse } from 'node:url'
const lTags = loggerTagsFactory('download')
@ -252,7 +253,8 @@ async function downloadGeneratedVideoFile (req: express.Request, res: express.Re
: maxResolutionFile.extname
// If there is the extension, we want to simulate a "raw file" and so not send the content disposition header
if (!req.path.endsWith('.mp4') && !req.path.endsWith('.m4a')) {
const urlPath = parse(req.originalUrl).pathname
if (!urlPath.endsWith('.mp4') && !urlPath.endsWith('.m4a')) {
const downloadFilename = buildDownloadFilename({ video, extname })
res.setHeader('Content-disposition', `attachment; filename="${encodeURI(downloadFilename)}`)
}