使用公共节点js服务器运行多个angular 4应用程序(渲染) [英] Run multiple angular 4 apps with a common node js server(rendering)

查看:92
本文介绍了使用公共节点js服务器运行多个angular 4应用程序(渲染)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何设置前端渲染索引文件(angula-4 cli)& backend(angular-4 cli)管理两个角度应用.

推荐答案

在节点侧的 server.js 中设置此代码,从角度侧路由文件进行管理路由意味着定义路径,例如"admin/userdetails" 这是我的 server.js .

Set this code in your server.js in node side, manage routings from angular side routing file means define path like "admin/userdetails" here is my server.js.

    var express = require('express');
    var app = express();
    var path = require('path');
    var config = require('./server/config/db');
    var bodyParser = require('body-parser');

    app.use(bodyParser.json());

    app.use(bodyParser.urlencoded({ extended: false }));

    app.use(bodyParser.json({limit: '16mb'}));

    /*
        allow cross origin requests
    */
    app.use(function(req, res, next) {
        res.setHeader("Access-Control-Allow-Methods", "POST, PUT, OPTIONS, 
        DELETE, GET");
        res.header("Access-Control-Allow-Origin", 
        "http://localhost:3000");
        res.header("Access-Control-Allow-Headers", "Origin, X-Requested-
        With, Content-Type, Accept");
        res.header("Access-Control-Allow-Credentials", true);
        next();
    });
     /*
        FOR API ROUTES 
     */
    app.use('/', require('./server/routes/api'));
    /*
    FOR INDEX FILE PATH 
    */
    app.use('/root', express.static(path.join(__dirname, '/')));  
    app.use('/backDist',express.static(path.join(__dirname,
    '/admin/dist/')));    
    app.use('/dist',express.static(path.join(__dirname,'/client/dist/')));
    /*
        FOR GET IMAGE PATH 
    */
    app.use('/image',express.static(__dirname+'/admin/src/uploads'));
    /*
      FOR GET ROOT PATH 
    */ 
    app.get('/', function (req, res, err) {
      res.sendFile(path.join(__dirname+'/client/dist','index.html'))
    });
    app.get('/admin/*', function (req, res) {  
      res.sendFile(path.join(__dirname+'/admin/dist','index.html'))
    });
    app.get('/admin', function (req, res) { 
      res.sendFile(path.join(__dirname+'/admin/dist','index.html'))
    });
    /*
       FOR CONNECTION STATUS 
    */
    app.use(function(req, res, next) {  
    var err = new Error('Not Found');
    err.status = 404;
    next(err);
    });

/*
    FOR SET CONNECTION PORT 
*/
app.listen(3000, function () {
console.log('Example listening on port 3000!');
});

module.exports = app; 

这篇关于使用公共节点js服务器运行多个angular 4应用程序(渲染)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆