使用名称 [object FormData] 创建的文件,但它必须是名称 Delivery.xlsx
file created with name [object FormData] but it must be Name Delivery.xlsx
我和 angular 7 一起在 asp.net 核心 2.2 项目上工作。我在下载文件时遇到问题
它使用名称 [object FormData].xlsx 创建,但名称必须是 DeliveryGeneration_Output.xlsx .
在 Angular 7
public uploadFile = (files) => {
const formData = new FormData();
formData.append('file', this.fileToUpload,this.fileToUpload.name);
this.http.post('https://localhost:44396/api/ApprovalQuality/', formData,{ responseType: 'blob' })
.subscribe((response: Blob) => saveAs(response, formData + '.xlsx'));
}
网络版 API .Net Core 2.2
var memory2 = new MemoryStream();
using (var stream = new FileStream(exportPath, FileMode.Open))
{
stream.CopyTo(memory2);
}
memory2.Position = 0;
return File(memory2, "text/plain", Path.GetFileName(exportPath));
返回并创建的路径
\192.168.2.7\ImportExport\2\Export\DeliveryGeneration_Output.xlsx
那么为什么文件名是用 [object FormData].xlsx 创建的而不是用 DeliveryGeneration_Output.xlsx
创建的
以及如何解决这个问题?
因为 formData
是 FormData
的一个类型。它加上.xlsx
,就会变成一个字符串。
[对象 FormData].xlsx
需要改为文件名,如:
this.http.post('https://localhost:44396/api/ApprovalQuality/', formData,{ responseType: 'blob' })
.subscribe((response: Blob) => saveAs(response, this.fileToUpload.name + '.xlsx'));
}
我和 angular 7 一起在 asp.net 核心 2.2 项目上工作。我在下载文件时遇到问题
它使用名称 [object FormData].xlsx 创建,但名称必须是 DeliveryGeneration_Output.xlsx .
在 Angular 7
public uploadFile = (files) => {
const formData = new FormData();
formData.append('file', this.fileToUpload,this.fileToUpload.name);
this.http.post('https://localhost:44396/api/ApprovalQuality/', formData,{ responseType: 'blob' })
.subscribe((response: Blob) => saveAs(response, formData + '.xlsx'));
}
网络版 API .Net Core 2.2
var memory2 = new MemoryStream();
using (var stream = new FileStream(exportPath, FileMode.Open))
{
stream.CopyTo(memory2);
}
memory2.Position = 0;
return File(memory2, "text/plain", Path.GetFileName(exportPath));
返回并创建的路径
\192.168.2.7\ImportExport\2\Export\DeliveryGeneration_Output.xlsx
那么为什么文件名是用 [object FormData].xlsx 创建的而不是用 DeliveryGeneration_Output.xlsx
创建的以及如何解决这个问题?
因为 formData
是 FormData
的一个类型。它加上.xlsx
,就会变成一个字符串。
[对象 FormData].xlsx
需要改为文件名,如:
this.http.post('https://localhost:44396/api/ApprovalQuality/', formData,{ responseType: 'blob' })
.subscribe((response: Blob) => saveAs(response, this.fileToUpload.name + '.xlsx'));
}