#reactjs #express #axios
#reactjs #экспресс #axios
Вопрос:
Я пытаюсь отправить объект с моим запросом get, чтобы я мог использовать его для извлечения данных из серверной части следующим образом:
axios.get('/', {
params: {
mainID: usersID.id,
otherID: usersID.otherID
}
});
Теперь в моем API я хочу получить доступ к этому объекту params, как мне это сделать?
router.get('/', (req, res) => {
//how to access params?
});
Ответ №1:
Вы можете получить доступ к параметрам маршрута в Express с помощью req.params
Из документации:
Параметры маршрута — это именованные сегменты URL, которые используются для захвата значений, указанных в их позиции в URL. Захваченные значения заполняются в объекте req.params с именем параметра маршрута, указанного в пути, в качестве соответствующих ключей.
Route path: /users/:userId/books/:bookId
Request URL: http://localhost:3000/users/34/books/8989
req.params: { "userId": "34", "bookId": "8989" }
Взгляните на раздел параметров маршрута по адресу:https://expressjs.com/en/guide/routing.html
Надеюсь, это поможет!
Комментарии:
1. req.params пуст, это не так
2. я думаю, вам нужно изменить свой маршрут на что-то вроде этого
/:mainID/:otherID
3. и отправить его куда в адресной строке?
4. Когда вы сделаете то, что предложил @RafaelLima, вам не нужно будет ничего делать на стороне Axios / клиента, внесите изменения в свой экспресс-код. Таким образом, вы сможете извлечь параметры. Обновил мой ответ