public async Task <ChuckNorrisJoke> GetRandomJokeFromCategory(ApiJokeCategories category) { HttpResponseMessage result = await _client.GetAsync($"?category={category.ToApiCategoryParameter()}"); result.EnsureSuccessStatusCode(); ChuckNorrisJoke joke = await result.Content.ReadFromJsonAsync <ChuckNorrisJoke>(); return(joke); }
public async Task <ChuckNorrisJoke> Handle(string category) { ChuckNorrisJoke joke = null; try { joke = await _chuckRepository.GetRandomJokeFromCategory(category); } catch (Exception e) { _logger.LogCritical(e, e.Message); } return(joke); }
private IEnumerator SearchJoke(string search, bool searchJokes = false) { jokePlaceholderTMP.text = "Loading. . ."; string finalURL = _URL + search; UnityWebRequest www = new UnityWebRequest(finalURL) { downloadHandler = new DownloadHandlerBuffer() }; yield return(www.SendWebRequest()); if (www.isNetworkError || www.isHttpError) { jokePlaceholderTMP.text = "Error"; Debug.Log("Error has occur: " + www.error); yield break; } if (searchJokes == false) { chucknorrisJoke = JsonUtility.FromJson <ChuckNorrisJoke>(www.downloadHandler.text); categoryTMP.text = chucknorrisJoke.categories.Count > 0 ? chucknorrisJoke.categories[0] : ""; jokePlaceholderTMP.text = chucknorrisJoke.value; Debug.Log(chucknorrisJoke.value); } else { chucknorrisJokes = JsonUtility.FromJson <SearchJoke>(www.downloadHandler.text); if (chucknorrisJokes.total > 0) { int rand = Random.Range(0, chucknorrisJokes.result.Count); ChuckNorrisJoke joke = chucknorrisJokes.result[rand]; jokePlaceholderTMP.text = joke.value; categoryTMP.text = joke.categories.Count > 0 ? joke.categories[0] : ""; } } }
public async Task <string> GetAJoke() { ChuckNorrisJoke chuckNorrisJoke = await _chuckNorrisClient.GetARandomJoke(); return(chuckNorrisJoke?.Joke); }