Обработка запросов Express.js с Vue.js
Разрабатываю приложение на Vue (с помощью Vue CLI) и Express, за роутинг отвечает Vue Router. Для обработки HTTP запросов использую Express. При разработке vue cli работает на одном порте, а node js на другом. Как сделать так, чтобы после деплоя они работали вместе (например при загрузке на хостинг)?
Ответы (1 шт):
Не имею опыта работы с vue, однако, вы можете попробовать следующее... Используйте npm-пакет https://www.npmjs.com/package/express-http-proxy или директиву proxy_pass для nginx. Предположу, что express-приложение работает на 5000 порту, тогда следующий пример будет работать:
var proxy = require('express-http-proxy');
var app = require('express')();
app.use('/proxy', proxy('localhost:5000'));
для express-http-proxy.
Или...
server {
# server setup
location /proxy {
proxy_pass http://localhost:5000;
}
}
для nginx (proxy_pass),
после чего вы сможете из vue-приложения (на другом порту) отправлять http-запросы по адресу /proxy/${your_route}, где ${your_route} - ваш целевой маршрут из express-приложения!