Я создал контроллер для поиска и возврата товаров и продолжаю возвращать мне объект internal server error
. Я создал методы в своем контроллере и сервисе, которые возвращают весь объект базы данных только для того, чтобы проверить мои настройки, и смог успешно запросить данные, перемещающиеся по пути API, как и ожидалось. Я не могу понять, что именно не работает здесь, с точки зрения того, что он не находит объект по какой-то причине или я делаю что-то неправильно, заставляя его сломаться, прежде чем он даже попытается найти его. Вот мой код.
GetProductsController
export class ProductDTO{
cattegory: string;
product: string;
}
@Controller('get-product')
export class GetProductsController {
constructor(private dataService: GetProductsService){}
@Get('find-product')
getProduct(@Query()data: ProductDTO ){
return this.dataService.fetchProduct(data.cattegory, data.product);
}
}
Сервис
@Injectable()
export class GetProductsService {
ProductData:ProductCattegoryItem[] = PRODUCTDATA; //imported mock data
constructor(){}
public fetchProduct(cattegory: string, product: string): ProductDataItem{
return this.ProductData.find(a=> a.productCattegoryId === cattegory).products.find(a => a.productId === product) as ProductDataItem;
}
}
Это путь, сгенерированный в Postman
после добавления ключей и значений, которые я хочу передать в
http://localhost: 3333 / api / get-product / find- product? data.cattegory = golden_ratio_dividers & data.product = divider_03
Я рассматривал всевозможные примеры @Query()
, но они такие базовые c, что не делают на самом деле показать что-нибудь, на самом деле многие методы только console.log()
ответ, в отличие от поиска части данных в базе данных или что-то еще практическое. Кажется, я не могу найти что-то более глубокое в этом и понятия не имею, что мне нужно сделать, чтобы заставить его работать. Кто-нибудь видит проблему здесь?