【发布时间】:2019-02-04 07:03:19
【问题描述】:
我想从 api 下载并保存文件。我的文件名为text.txt,但保存的文件名为:_text.txt_,该文件的内容为:[object Object]
这是我下载为文件的功能:
const options = {
headers: new HttpHeaders().append('Authorization', this.oAuthService.getAccessToken()),
params: new HttpParams().append('responseType', 'text'),
observe: 'response' as 'response'
}
return this.http.get(this.fileServerUrl + 'file/download/' + filename + '/' + version, options)
.subscribe(
resp => { this.saveToFileSystem(resp)
});
}
private saveToFileSystem(response) {
const contentDispositionHeader: string = response.headers.get('Disposition');
const parts: string[] = contentDispositionHeader.split(';');
const filename = parts[1].split('=')[1];
filename.replace(/"/g, '');
console.log(filename);
console.log(response.body)
const blob = new Blob([response.body], { type: 'text/plain' });
saveAs(blob, filename);
}
第一个console.log的输出是text.txt,response.body的console.log是:this is a test text..
那么为什么保存的文件名以_开头和结尾,而内容不是响应正文中的文本。
提前致谢
【问题讨论】:
-
您可以在问题中附上您面临的问题,以便更清楚地了解您寻求帮助解决什么