node服務實現一個文件上傳和下載功能,在文件下載時因爲文件名字含有中文,所以報錯:
The header content contains invalid characters
源代碼:
res.writeHead(200, {
'Content-Type': 'application/octet-stream;charset=UTF8',//告訴瀏覽器這是一個二進制文件
'Content-Disposition': 'attachment; filename=' +files[0],//告訴瀏覽器這是一個需要下載的文件,files[0]是文件名
});/
解決方案:
res.attachment(files[0]) //告訴瀏覽器這是一個需要下載的文件,解決中文亂碼
res.writeHead(200, {
'Content-Type': 'application/octet-stream;charset=UTF8',//告訴瀏覽器這是一個二進制文件
});//設置響應頭