У меня есть React SPA, в котором все маршруты настроены на веб-интерфейсе для URL-адресов. Один из моих URL-адресов, / sizes, имеет настроенные параметры, так как у него есть панель поиска. Когда пользователь вводит адрес, он передает эту информацию об адресе в узел, который затем обращается к некоторым API-интерфейсам и передает эти данные обратно во внешний интерфейс. В настоящее время все работает, кроме одной незначительной проблемы. Если вы обновите sh страницу, вы получите печально известную «не удается GET /estimates».
Я попытался настроить универсальную (app.get ('/ *')), которая не сработала. Я использую реагирующий маршрутизатор v4, поэтому я также попытался использовать вместо него <HashRouter>
, который устраняет проблемы с refre sh, но как только я пытаюсь выполнить поиск, параметры больше не работают (невозможно GET / оценка # / оценка)
я уверен, что это просто я ничего не объявляю правильно, но я готов получить некоторую помощь и хочу извлечь из этого урок.
ниже мой код узла и фрагмент внешнего интерфейса. сайт работает в продакшене, так как я заставлял его публиковать и работать (без ошибки получения) на heroku.
Backend
app.get('/estimates/:street_address/:city/:state/:zip', async (req, res) => {
var melissa_data;
var zillow_data;
var realtor_data;
var mash_redfin_data;
const parameters = {
address: req.params.street_address,
citystatezip: `${req.params.city}, ${req.params.state}`,
rentzestimate: false
}
const street_address = req.params.street_address;
const city = req.params.city;
const state = convertRegion(req.params.state);
const zip = req.params.zip;
Интерфейс
import { BrowserRouter as Router } from 'react-router-dom';
import App from './App';
ReactDOM.render(
<Router>
<App />
</Router>,
document.getElementById('root'));