Справочная информация: моя среда разработки - cloud9 web ide. Мой сервер приложений слушает 8000 порт через nginx. Я запускаю webpack devserver на порт 9000.
Я хочу передать все запросы на сервер приложений, кроме корневого URL /
и URL, начинающегося с /sockjs
. Я проверил документы devserver и http-proxy-middleware , и мне трудно найти правильное решение в веб-пакете, соответствующее proxy(['/api/**', '!**/bad.json'], {...})
в http-proxy-middleware.
Я пробовал:
devServer: {
disableHostCheck: true,
proxy: {
'!sockjs': {
target: `http://0.0.0.0:8000`,
},
},
port: 9000,
},
и
devServer: {
disableHostCheck: true,
proxy: {
[['/**', '!**/sockjs']]: {
target: `http://0.0.0.0:8000`,
},
},
port: 9000,
},
Я знаю bypass
, но он тоже не работает.
devServer: {
disableHostCheck: true,
proxy: {
'/': {
target: `http://0.0.0.0:8000`,
bypass: function(req, res, proxyOptions) {
if (req.originalUrl.startsWith('/sockjs')) {
return '/index.html';
}
},
},
},
port: 9000,
},