Можно ли запросить угловой сервер на сервере 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, в котором будет отображаться ваш контент.

Другие вопросы по тегам