вы упомянули URL-адрес запроса и маршрут, который обрабатывает этот запрос, а затем также спросите, что What would be the requests that I have to make to the router to filter?
это означает, что вы хотите знать, как получить отфильтрованные данные о продукте из обработчика маршрута.
router.get('/products', (req, res) => {
//I assume that your product model is 'Product'
const filteredProduct=Product.find(req.query);
})
Пожалуйста, обратитесь приведенный выше пример обработчика маршрута, который обрабатывает оба запроса
GET localhost: 3000/products?name=laptop&color=black&price=400&tags=tech //get filtered product
GET localhost: 3000/products/ //get all product
, здесь я предполагаю, что Product - это ваша модель данных, поэтому для получения всей записи продукта вам необходимо вызвать метод find () mon goose без каких-либо параметров и получить отфильтрованные данные, передайте объект в метод поиска. например, вы хотите, чтобы весь продукт был отфильтрован по имени, цвету
Product.find({name:'laptop',color:'black'})
req.Query вернет объект JS после того, как строка запроса будет разобраны. подробнее о req.Query , req.params , req.body