findById do Mongoose O método converte o id parâmetro para o tipo de _id do modelo campo para que ele possa consultar corretamente o documento correspondente. Este é um ObjectId, mas "foo" não é um ObjectId válido, portanto, a conversão falha. Isso não acontece com
41224d776a326fb40f000001 porque essa string é um ObjectId válido. Uma maneira de resolver isso é adicionar uma verificação antes do seu
findById ligue para ver se id é um ObjectId válido ou não é assim:if (id.match(/^[0-9a-fA-F]{24}$/)) {
// Yes, it's a valid ObjectId, proceed with `findById` call.
}