Попробуйте добавить historyApiFallback: true
к вашему webpack.config.js
файлу (не уверен, что прокси-сервер с ним будет связываться - если это так, используйте взамен промежуточное ПО * cors на бэкэнде):
devServer: {
host: 'localhost',
port: 9000,
quiet: true,
historyApiFallback: true,
},
Кроме того, более распространенной настройкой порта является: приложение React на 3000
и API / сервер на 5000
.
Кроме того, убедитесь, что вы четко разделяете свои передний и задний маршруты.Попробуйте сохранить свои внутренние маршруты на /api/someurl
и добавить их к своему прокси (и AJAX
запросам):
proxy: {
'/api/*': 'http://localhost:3000/api/'
}
Тогда все внешние запросы будут:
axios.get('/api/someurl').then().catch()
, которое разрешится до http://localhost:3000/api/someurl
.Таким образом, нет никакого шанса смешать внешние и внутренние маршруты.
Лично я бы порекомендовал cors
вместо proxy
, потому что прокси-сервер, как было известно, вызывал случайные проблемы с подключением.