TypeError [ERR_INVALID_CHAR]:标题内容中的无效字符 ["Content-Disposition"] - nodejs

问题描述

我正在尝试使用 node.js 制作 youtube 视频下载器。我正在使用 ytdl 包下载视频。它正在正确下载视频,但是当视频标题中有表情符号时它会崩溃并显示错误消息

TypeError [ERR_INVALID_CHAR]: Invalid character in header content ["Content-disposition"]

这是代码

app.get("/download",async function(request,response){
const videoURL = request.query.videoURL;
const itag = request.query.itag;
const info = await ytdl.getInfo(videoURL);
response.header("Content-disposition",'attachment;\ filename="' + info.videoDetails.title + '.mp4"');
    ytdl(videoURL,{
        filter: format => format.itag == itag
    }).pipe(response);
});

请求代码

document.querySelector("#download-btn").addEventListener("click",function(){
    let videoURL = document.querySelector("#video-url").value;
    let itag = document.querySelector("#download-options").value;
    window.open(host + "download?videoURL="+videoURL+"&itag="+itag);
});

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...