Как изменить путь в URL внутри запроса http get - PullRequest
0 голосов
/ 04 июля 2019

Я выполняю запрос GET для некоторого идентификатора пользователя, и мне действительно нужно получить этот профиль пользователя по идентификатору. app.get ('/ userID), но я не хочу видеть идентификатор в своем веб-URL, но имя пользователя, как я могу это сделать? Я также использую Reactjs, я не знаю, нужно ли мне в этом случае менять внутренний или внешний интерфейс. Спасибо за помощь!

мой код - бэкэнд:

 const router = express.Router()

 router.get('/:userId', (req, res, next) => {
 let userID = req.params.userId

   .....
})

мой код - интерфейс:

componentDidMount() {

let theURL = window.location.pathname.split('/')[1]
let userID = theURL.replace(theURL, '/hellotest')

getUserProfile(userID).then(
  response => {
    this.setState({
      userName: response.data.userName,
     ....
    })
  },
  error => {
    this.setState({
    ....
    })
  }
 )
}

Я пытался с window.location.pathname.replace (theURL, '/ hellotest') и не работает.

Спасибо за вашу помощь

1 Ответ

0 голосов
/ 05 июля 2019

req.originalUrl сохраняет исходный URL-адрес запроса, что позволяет вам свободно переписывать req.url для внутренних маршрутовмаршрут

res.redirect( req.originalUrl.split("?").shift() );
...