public IActionResult Get(int id) { try { var poemsString = Manipulations.GetDataByUrl(Settings.Poems); var poems = JsonSerializer.Deserialize <List <Poem> >(poemsString); var etalonPoem = Settings.EtalonPoem; var poem = Manipulations.GetRandomPoem(poems); var distance = JaroWinklerDistance.distance(poem, etalonPoem); var person = new Person() { Poem = poem, Distance = Math.Round(distance, 2) }; using (var client = new HttpClient()) { client.BaseAddress = new Uri(Settings.Localhost); var res = client.PostAsJsonAsync($"getinfo/{id}", person).Result; } return(StatusCode(StatusCodes.Status200OK)); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError)); } }
public IActionResult Post() { var randomPerson = Manipulations.GetDataByUrl(Settings.RandomUser); var quote = Manipulations.GetDataByUrl(Settings.Quote); var person = Manipulations.PersonParseFromJson(randomPerson, quote); try { db.Persons.Add(person); db.SaveChanges(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(Settings.Localhost); var response = client.GetAsync($"getpoem/{person.Id}").Result; if (response.StatusCode == System.Net.HttpStatusCode.InternalServerError) { return(StatusCode(StatusCodes.Status500InternalServerError)); } else { return(StatusCode(StatusCodes.Status201Created)); } } } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError)); } }