Почему я получаю ошибку Mon goose при отправке запроса PUT на пустой маршрут? - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть эта функция, которая заставляет топор ios поставить запрос на /api/lyric/tag

const addTag = async (name, tagId, lyricId) => {
    const body = {name, tagId, lyricId};
    await axios.put(`/api/lyric/tag`, JSON.stringify(body), { headers: {'Content-Type': 'application/json'} });
}

В текущий момент маршрут /api/lyric/tag полностью пуст:

// @route   PUT api/lyric/tag
// @desc    Add tag to lyric
// @access  Private
router.put('/tag', auth, async (req, res) => {


});

И все же по какой-то причине я получаю эту ошибку каждый раз, когда ax ios делает запрос пут: Cast to ObjectId failed for value "tag" at path "_id" for model "lyric"

Я схожу с ума?

1 Ответ

0 голосов
/ 27 апреля 2020

Поместите res.send ("OK") или res. json ({message: "OK"}) в конец маршрута.

Вы получаете эту ошибку, потому что вы не отвечаете запрашивающий.

Или этот маршрут совпадает с другим маршрутом ...

/ api / lyri c имеет какой-либо маршрут? Если он имеет значение, равное / api / lyric /: _ id, этот маршрут вызывается.

Попробуйте изменить маршрут на / api / lyric / tag / update. Это не ОТДЫХ, но ваш маршрут будет звонить. Тогда вам потребуется рефакторинг API, чтобы он был связным.

...