Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js NodeJs服务器中的角度_Node.js_Angular_Server - Fatal编程技术网

Node.js NodeJs服务器中的角度

Node.js NodeJs服务器中的角度,node.js,angular,server,Node.js,Angular,Server,我是初学者。我有一个nodejs服务器,前端有一个Angular。现在我想知道是否有可能两台服务器都只有一台? 因为在youtube的一些视频中,他们有一台服务器用于节点,一台服务器用于角度 谢谢,再见是的,两台服务器都可以有一台 您可以通过您最喜欢的HTTP服务器(例如,express)在NodeJS服务器上将AngularJS文件作为静态文件提供,如下所示: app.use(express.static(path.join(__dirname, 'client'))) 其中client是包

我是初学者。我有一个nodejs服务器,前端有一个Angular。现在我想知道是否有可能两台服务器都只有一台? 因为在youtube的一些视频中,他们有一台服务器用于节点,一台服务器用于角度


谢谢,再见是的,两台服务器都可以有一台

您可以通过您最喜欢的HTTP服务器(例如,
express
)在NodeJS服务器上将AngularJS文件作为静态文件提供,如下所示:

app.use(express.static(path.join(__dirname, 'client')))

其中
client
是包含前端内容的目录

在基本级别,您需要为构建的静态Angular文件设置静态路径,如果您使用Angular路由,您可能希望将所有请求定向到Angular项目的
index.html
,以便Angular可以处理所有客户端路由

例如,为位于express generator创建的默认
public
文件夹中的内置Angular CLI项目设置静态路径。该示例使用
dist
,因为这是执行
ng build
时Angular CLI项目的默认目标

app.use(express.static(path.join(__dirname, 'public', 'dist')));
Catch all route可将Express应用程序路由定义未捕获的任何请求(例如返回JSON数据或类似数据的RESTful路由)定向到Angular项目的
index.html

// some routes
var users = require('./routes/users');
app.use('/users', users);

// other routes
var todos = require('./routes/todos');
app.use('/todos', todos);

// catch-all route
// needs to go AFTER all other express server route definitions
app.use('*', (req, res) => res.sendFile(path.join(__dirname, 'public', 'dist', 'index.html')));
如果使用Angular CLI,则在开发过程中,可以使用

希望这有帮助