Изменение строки URL-адреса в app.post на express JS - PullRequest
0 голосов
/ 07 мая 2020

это мой первый пост, и я пытаюсь вернуться к технологиям после перерыва в несколько лет. Снова наслаждаюсь программированием и решил сначала изучить стек MERN. Я прошел несколько руководств, а затем начал создавать веб-сайт для своего бизнеса. Создал несколько страниц здесь и там и был довольно успешен в создании большинства вещей с помощью express, HTML и CSS, пока не попал в ситуацию.

Вопрос. У меня есть app.post для моего маршрута '/ rank', и в этой функции я выполняю несколько c logi. Этот app.post вызывается со страницы '/ rank', когда пользователь нажимает кнопку «Просмотреть профиль». Идея состоит в том, чтобы взять уникальный идентификатор в качестве значения из шаблона HTML и передать его в app.post. Затем выполните бизнес-логию c, которая включает поиск уникальных значений уникального идентификатора из БД. Как только это будет сделано, передайте его на страницу / profile с помощью res.render. Теперь все работает нормально. Однако после вызова res.render ("profile"), даже если веб-сайт правильно переходит на страницу, на которую я хочу, URL-адрес читает http://localhost: 3000 / rank (Это страница, с которой был сделан пост-вызов). Вместо этого я хочу, чтобы он читал: http://localhost: 3000 / profile

Если есть решение для этого, дайте мне знать. Также, если ответ подразумевает, что я не понял некоторых ключевых понятий, касающихся express и маршрутизации, пожалуйста, передайте меня в этом направлении. Заранее спасибо.

1 Ответ

0 голосов
/ 07 мая 2020

URL-адрес маршрута и имя файла, которое вы передаете на render, полностью независимы.

Если вы хотите перенаправить кого-то на другой URL-адрес, вам необходимо ответить на запрос, используя res.redirect а не res.render.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...