2017-08-28 5 views
0

J'ai deux serveurs en cours d'exécution, l'un est NodeJS, l'autre est Angular. NodeJS écoute le port 3000, angular écoute le port 8000. Est-il possible d'obtenir un site Web angulaire, puis mettre à jour au port 3000? Par exemple, les utilisateurs peuvent ouvrir localhost: 8000 pour accéder à mon application angulaire. Est-il possible pour les utilisateurs d'accéder à une application angulaire via localhost: 3000 qui est mon service NodeJS. Actuellement, je l'ai fait quelque chose comme ceci:Est-il possible de demander serveur angulaire dans le serveur nodejs

app.get('/', function (req, res) { 
    res.setHeader('Access-Control-Allow-Origin','*'); 
    request('localhost:8000', function (error, response, body) { 
    if (!error && response.statusCode == 200) { 
     console.log(body); 
     res.send(body); 
     } 
    }) 
}); 

app.listen(3000, function() { 
    console.log('Nodejs service has been invoked'); 
}); 

Quand j'accéder à localhost: 3000, je ne pouvais pas voir quoi que ce soit, la raison est n'a pas pu trouver localhost: 3000/assets/css/main.css, localhost : 3000/nom de fichier. Parce que ces fichiers ne peuvent être trouvés qu'à localhost: 8000.

Je ne pouvais pas comprendre. J'espère que quelqu'un peut m'aider.

Répondre

0

vous devez modifier la configuration middleware de réalimentation, serveur /middleware.json, pour ressembler à ceci:

{ 
"initial:before": { 
    "loopback#favicon": {} 
}, 
"initial": { 
    "compression": {} 
}, 
"session": {}, 
"auth": {}, 
"parse": {}, 
"routes": { 
    "loopback#status": { 
     "paths": "/status" 
    } 
}, 
"files": { 
    "loopback#static": { 
     "params": "$!../client" 
    } 
}, 
"final": { 
    "loopback#urlNotFound": {} 
}, 
"final:after": { 
    "errorhandler": {} 
} 
} 

Le fichiers clé est au-dessus de la partie la plus importante. Ce paramètre indique au serveur LoopBack de servir les fichiers statiques du répertoire du client. Une fois que vous avez modifié cette configuration, vous pouvez créer un fichier index.html qui affiche votre contenu.