首页 > 解决方案 > Angular 7 - 在运行时将文件加载到资产文件夹中

问题描述

我的后端有一条返回文件的路线:

app.get('/path', (req, res) => {
    res.send(path.join(__dirname, './myfile.obj'))
})

我的目标是在运行时通过 Angular 加载这个文件。

目前我正在尝试通过 HTTP 请求执行此操作,但它似乎不起作用:

this.http.get('myurl', { /* my options */ }).subscribe(data => {
    console.log('data', data);
});

我需要能够在运行时将文件“保存”在资产文件夹(或其他任何地方)中,这样我就可以通过文件的位置将文件传递到加载器中:

const objLoader = new OBJLoader();
objLoader.setPath('assets/');
objLoader.load('myfile.obj', (object) => {
    // ...
});

标签: node.jsangularhttpangular7

解决方案


JSON 是 http.get 从 Angular 7 返回的默认类型。它会尝试将其解析为 JSON。查看HttpClient 的 Get 方法的重载并使用适当的强制转换。


推荐阅读