Я получаю сообщение об ошибке сервера
Ошибка приведения к ObjectId для значения "groupsbycourse" по пути "_id" для модели "group"
и ответа JSON
{
"msg": "Group not found"
}
буквально на маршруте, который просто отправляет res.send.Хотя более сложный маршрут действительно работает.Доказательство того, что это не вызвано промежуточным ПО.Что может быть причиной этого?Этот маршрут минимизирован.Есть ли какое-то правило с URL-путем, о котором я не знаю?
В простом маршруте было гораздо больше кода, но я комментировал его до тех пор, пока в нем просто не появился тест "res.send"и я все еще получил ошибку.Это означает, что проблема связана с сигнатурой маршрута.Хотя подпись предельно проста и является точной копией подписи рабочего маршрута.Кроме рабочего маршрута есть переменная параметра.Я также попытался убрать асинхронность, и она все еще не работала.
router.get('/groupsbycourse', auth, async (req, res) => {
/* the entire route commented out */
res.send('please');
});
router.get('/:id', auth, async (req, res) => {
try {
const group = await Group.findById(req.params.id);
if (!group) {
return res.status(404).json({ msg: 'Group not found'});
}
res.json(group);
} catch (err) {
console.error(err.message);
if (err.kind === 'ObjectId') {
return res.status(404).json({ msg: 'Group not found'});
}
res.status(500).send('Server error');
}
});
Я ожидаю, что просто «пожалуйста» вернется по маршруту.На почтальоне я отправляю запрос GET на http://localhost:5000/api/groups/groupsbycourse
, потому что маршрут импортирован в '/ api / groups' с заголовком и действителен для удовлетворения промежуточного программного обеспечения аутентификации.