public JsonResult ClassifyUrl([FromBody] ClassifyUrlRequestViewModel model) { try { var client = new VisualRecognitionClient(model.ApiKey); var request = new VisualRecognitionClassifyUrl(model.Url) { Classifiers = model.Classifiers, Owners = model.Owners, Threshold = model.Threshold }; var response = client.ClassifyImageUrl(request); return(Json(response)); } catch (Exception exc) { return(JsonError(exc)); } }
public VisualRecognitionClassifyResponse ClassifyImageUrl(VisualRecognitionClassifyUrl model) { var client = new RestClient(Configuration.ApiUrl); var requestUrl = new StringBuilder(); requestUrl.Append($"/classify?api_key={Configuration.ApiKey}&version={Configuration.Version}&url={model.Url}"); if (model.Threshold.HasValue) { requestUrl.Append($"&threshold={model.Threshold}"); } if (model.Classifiers != null && model.Classifiers.Any()) { requestUrl.Append($"&classifier_ids={string.Join(",", model.Classifiers)}"); } if (model.Owners != null && model.Owners.Any()) { requestUrl.Append($"&owners={string.Join(",", model.Owners)}"); } // Create a RestRequest and set ContentType to multipart/form-data var request = new RestRequest(requestUrl.ToString()) { Method = Method.GET }; request.AddHeader("Content-Type", "multipart/form-data"); // Execute the API Call var response = client.ExecuteSync(request); // Handle the Response return(HandleRecognitionResponse <VisualRecognitionClassifyResponse>(response)); }