2017-01-16 6 views
0

多くの検索をして疲れましたが、まだ分かりません。ここでC#で次のカール要求を実行するには?

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" 

答えて

1

あなたが行く:

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"); 

これはHttpClientを使用し、async方法の内である必要があります。

HttpClientIDisposableを実装していますが、インスタンスを再利用し、処分しないことをお勧めします。

古いHttpWebRequest APIを使用することができ、あなたは.NET 4.0と下位を使用している場合は、.NET 4.5 +で作業している場合は、あなたにもHttpClientと非同期メソッドを使用することができます

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(); 
+1

私はそのクラスが存在しなかったことを知らなかったとは思えません。それが加えられたことに気付かなかった。 HttpClientレッスンありがとう! – Kelly

+1

喜んで助けてくれるなら、あなたやOPが自由にupvote/accept =を助けてくれた – Stuart

0

を:

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 
    } 
} 
関連する問題