我想使用get方法从Node服务器发送文件,并希望在Angular2客户端端接收它 这是我获取文件的Api:
文件接收器Api使用Node Express
function getUserFileByEmail(req, res) {
UserCv.findOne({ emailAddress: req.params.emailAddress }, (err, usercv) => {
if (err) {
return res.send(err);
}
const filePath = path.join('E:/Work/node-portal/uploads', usercv.file);
console.log(filePath);//this is printing the exact file name along with extension that i want to receive at cliend end
usercv.file = filePath;
res.sendFile(filePath);
});
}
在客户端,我的代码是:
使用angular2的FileReceiver请求
getfile() {
return this.http.get(`${this._getfile}/${user.emailAddress}`, options)
.map(res=> (<Response>res).blob())
.catch(this.handleError);
}
通过这样做我收到的错误是: “请求正文不是blob或数组缓冲区” 所以任何人都知道我在服务器端或客户端文件中做错了什么