#angular #express #router
#angular #экспресс #маршрутизатор
Вопрос:
Я пытаюсь получить более подробную информацию о ряде идентификаторов из базы данных, но я не смог понять, как это сделать.
Вот массив элементов:
var memberIds = ["2892056", "2894544", "2894545", "2894548", "2894550", "2894553", "2894555"];
var teamId = '123434';
var categoryId = 6;
// POST from angular
getMembersDetail(teamId, categoryId, memberIds) {
let params = teamId '/' categoryId;
return this.http.post(baseURL 'member-details/' params, memberIds);
}
Ранее я пытался получить запрос с данными, но не сработало. Я продолжал получать ошибку 404 от express. Итак, я попробовал POST-запрос, но это также выдает ошибку 404.
Затем в экспресс:
router.post('member-details/:teamId/:categoryId', function(req, res){
const getMemberDetails = async() => {
try{
const categoryId = req.params.categoryId;
const teamId = req.params.teamId;
const memberIds = req.body;
const config = {
header: {
'Content-Type': 'application/x-www-form-urlencoded'
}
};
var url = baseUrl 'member-details/' teamId '/' categoryId '/';
const response = await axios.post(url, memberIds, config);
res.send(respose.data);
} catch {
res.status(error.response.status).send(error.response.data);
};
}
getMemberDetails();
});
ПРИМЕЧАНИЕ: Экспресс-маршрутизатор использует axios для создания дальнейшей публикации. Это сообщение R
и Plumber
API. Пожалуйста, не обращайте внимания на эту часть. У меня возникли проблемы только с получением экспресс-маршрутизатора с данными и параметрами.
Комментарии:
1. Проверьте сеть и посмотрите на маршрут, какой у вас
baseUrl
? Вы уверены, что вам не нужно добавлять ‘/’ после baseUrl ?this.http.post(baseURL '/member-details/' params, memberIds);
2. да, baseUrl в порядке. это тот, который я использую для других маршрутов, и все они работают, кроме этого. Я уже добавил предыдущий
/
в baseUrl для простоты.
Ответ №1:
Если baseURL
уже содержит
, то, возможно, вам не хватает a
в экспресс-маршрутизаторе. Возможно, вам это понадобится до вашего member-details
подобного,
router.post('/member-details/:teamId/:categoryId', function(req, res)
обратите внимание на a /
в URL-адресе сообщения.