在 JavaScript 中,可以通过 header
属性中的 Content-Disposition
信息来截取 filename
数据。下面是一个获取 filename
的示例代码:
function getFilenameFromHeader(header) {
const regex = /filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/;
const matches = regex.exec(header);
let filename = '';
if (matches != null && matches[1]) {
filename = matches[1].replace(/['"]/g, '');
}
return filename;
}
const header = 'attachment; filename="example.txt"';
const filename = getFilenameFromHeader(header);
console.log(filename); // 输出:example.txt
在上面的代码中,getFilenameFromHeader
函数使用正则表达式来匹配 filename
的值。然后,将匹配到的值去除引号,最后返回结果。在这个示例中,输入的 header
为 'attachment; filename="example.txt"'
,最终输出的 filename
为 'example.txt'
。