Одна важная вещь, которую следует иметь в виду при использовании запроса на основе Regex. Когда вы делаете это для системы входа в систему, удаляет каждый отдельный символ , который вы ищете, и не забывайте ^ и $ операторов. Lodash имеет приятную функцию для этого , если вы уже используете его:
db.stuff.find({$regex: new RegExp(_.escapeRegExp(bar), $options: 'i'})
Почему? Представьте, что пользователь вводит .*
в качестве своего имени пользователя. Это будет соответствовать всем именам пользователей, что позволит войти в систему, просто угадывая пароль пользователя.