Je suis épuisé après avoir beaucoup cherché, mais je n'ai toujours aucune idée.

curl -X GET --header "Accept: application/json" --header "app_id: yyyyyyyy" --header "app_key: xxxxxxxxxxxxxxxxxxxxxxxxxxx" "https://od-api.oxforddictionaries.com:443/api/v1/inflections/en/changed"
0
Shubham Avasthi 17 janv. 2017 à 01:35

2 réponses

Meilleure réponse

Voici:

var client = new HttpClient();
client.BaseAddress = new Uri("https://od-api.oxforddictionaries.com:443/api/v1");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("app_id", "yyyyyyyy");
client.DefaultRequestHeaders.Add("app_key", "xxxxxxxxxxxxxxxxxxxxxxxxxxx");
var response = await client.GetAsync("/inflections/en/changed");

Cela utilise HttpClient et doit être à l'intérieur d'une méthode async.

Bien que HttpClient implémente IDisposable, il est recommandé de réutiliser l'instance et de ne pas la supprimer.

Si vous utilisez .NET 4.0 et version antérieure, vous pouvez utiliser les anciennes API HttpWebRequest:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://od-api.oxforddictionaries.com:443/api/v1/inflections/en/changed");

request.Accept = "application/json";
request.Headers.Add("app_id", "yyyyyyyy");
request.Headers.Add("app_key", "xxxxxxxxxxxxxxxxxxxxxxxxxxx");

var response = (HttpWebResponse)request.GetResponse();
2
Stuart 16 janv. 2017 à 23:07

Si vous travaillez avec .Net 4.5 +, vous pouvez également utiliser les méthodes HttpClient et async:

using (var client = new HttpClient())
{
    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
    client.DefaultRequestHeaders.Add("app_id", @"yyyyyyyy");
    client.DefaultRequestHeaders.Add("app_key", @"xxxxxxxxxxxxxxxxxxxxxxxxxxx");

    var response = await client.GetAsync("https://od-api.oxforddictionaries.com:443/api/v1/inflections/en/changed");
    if (response.IsSuccessStatusCode)
    {
        //Do your thing
    }
}
1
Darjan Bogdan 16 janv. 2017 à 23:02