comportement de la méthode client.GetAsync()
Bonjour,
Soit la méthode AfficherLesAuteurs(IList<Auteur>listeAuteurs) d'un controller Auteur qui appelle la méthode RecupLesAuteursAsync
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
[RoutePrefix("api/Auteur")]
public class AuteurController : Controller
{
private const string urlAPI = "http://localhost:59281/api/";
[Route("")]
[HttpGet]
public async Task<ActionResult> AfficherAuteurs(IList<Auteur>listeAuteurs)
{
VM_ListAuteurs modelAuteurs = new VM_ListAuteurs();
modelAuteurs.ListAuteurs = null;
try
{
modelAuteurs.ListAuteurs = await this.RecupLesAuteursAsync(listeAuteurs);
return View(modelAuteurs);
}
catch (Exception ex)
{
Console.WriteLine("une erreur s'est produite" + ex.Message);
return View(modelAuteurs);
}
} |
Soit la méthode RecupLesAuteursAsync(IList<Auteur>listeAuteurs) suivante déclarée dans le Controller
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
public async Task<IEnumerable<Auteur>> RecupLesAuteursAsync(IList<Auteur>listeAuteurs )
{
using (HttpClient client = new HttpClient())
{
var objetReponse = await client.GetAsync($"{urlAPI}Auteur");
if (objetReponse.StatusCode == System.Net.HttpStatusCode.OK)
{
var objetContenu = objetReponse.Content;
var stringContenu = await objetContenu.ReadAsStringAsync();
var listAuteurs = JsonConvert.DeserializeObject<IEnumerable<Auteur>>(stringContenu);
return listAuteurs;
}
else if (objetReponse.StatusCode == System.Net.HttpStatusCode.NotFound)
{
return null;
}
else
{
var objetContenu = objetReponse.Content;
var stringContenu = await objetContenu.ReadAsStringAsync();
throw new Exception("Un problème avec API : status = {objetReponse.StatusCode}, contenu : {stringContenu}");
}
}//fin de using
}//fin de methode RecupLesAuteursAsync |
Merci de m'informer comment récupérer les infos à l'adresse http://localhost:59281/api/Auteur par l'appel de la méthode
Code:
1 2
|
var objetReponse = await client.GetAsync($"{urlAPI}Auteur"); |
Dois je utiliser un client Rest absolument ou pas ?
Merci beaucoup de votre réponse .
Bien cordialement.
new_wave