Можно ли запросить угловой сервер на сервере nodejs?
У меня сейчас работает два сервера, один - NodeJS, другой - Angular. NodeJS прослушивает порт 3000, угловой прослушивает порт 8000. Можно ли получить угловой веб-сайт и затем обновить порт 3000? Например, пользователи могут открыть localhost:8000 для доступа к моему угловому приложению. Могут ли пользователи получить доступ к угловому приложению через localhost:3000, который является моей службой 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');
});
Когда я получаю доступ к localhost:3000, я ничего не вижу, причина в том, что я не могу найти localhost:3000/assets/css/main.css, localhost:3000/filename. Потому что эти файлы можно найти только по адресу localhost:8000.
Я не мог понять. Надеюсь, кто-нибудь может мне помочь.
1 ответ
Вам нужно настроить промежуточное ПО LoopBack, server / middleware.json, чтобы оно выглядело так:
{
"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": {}
}
}
Ключ файлов выше - самая важная часть. Этот параметр указывает серверу LoopBack обслуживать статические файлы из клиентского каталога. После настройки этой конфигурации вы можете создать файл index.html, в котором будет отображаться ваш контент.