public ProductList GetProducts(ProductsRequest productsRequest) { HttpWebRequest request = CatalogRequestBuilder.ConstructProductsRequest(apiKey, productsRequest); ProductList productList = ProcessBodylessRequest(request).ToObject<ProductList>(); return productList; }
public void TestGetProducts() { ProductsRequest productsRequest = new ProductsRequest(); productsRequest.Ids = new string[] { "1004004012288125", "1004004012257956" }; productsRequest.IncludeAttributes = true; productsRequest.Offers = new EnumTypes.OfferType[] { EnumTypes.OfferType.ALL }; ProductList productList = client.GetProducts(productsRequest); Assert.IsNotNull(productList.Products); Assert.IsTrue(productList.Products.Count == 2); }
public static HttpWebRequest ConstructProductsRequest(string apiKey, ProductsRequest productsRequest) { NameValueCollection queryParams = new NameValueCollection(); queryParams.Add("apikey", apiKey); if (productsRequest.IncludeAttributes != null) { queryParams.Add("includeattributes", productsRequest.IncludeAttributes.ToString().ToLower()); } if (productsRequest.Offers != null) { queryParams.Add("offer", FormatterUtils.FormatOffer(productsRequest.Offers)); } string queryString = HttpUtils.ToQueryString(queryParams); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Constants.URL_PREFIX + "/catalog/v4/products/" + FormatterUtils.FormatIds(productsRequest.Ids) + "/" + queryString); request.Method = "GET"; request.Accept = "application/json"; return request; }