1

Windows ストア アプリで TheMovieDb Api を使用したいと考えています。

Windows Phone 8 では、 WebClient を使用しました。

WebClient client = new WebClient();

client.DownloadStringCompleted += client_DownloadStringCompleted;
client.DownloadStringAsync(new Uri("http://api.themoviedb.org/3/search/movie?api_key=" + key + "&query=" + movieName));

private void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    if (e.Error == null)
    {
        RootObject resultat = JsonConvert.DeserializeObject<RootObject>(e.Result);
        idMovie = resultat.results.FirstOrDefault().id.ToString();
    }
}

Windows 8 アプリでそれを行うにはどうすればよいですか?

私は試した

HttpClient http = new System.Net.Http.HttpClient();
string response = await http.GetStringAsync("http://api.themoviedb.org/3/search/movie?api_key=" + key + "&query=" + movieName);
return response;

しかし、私はエラーが発生します:

応答ステータス コードが成功を示さない: 406(受け入れられません)

ありがとう

編集 :

わかりました、追加する必要がありました

http.DefaultRequestHeaders.Add("accept", "Application/JSON");
4

1 に答える 1

0

これを試して:

var httpClient = new HttpClient();
var content = await httpClient.GetStringAsync("http://api.themoviedb.org/3/search/movie?api_key=" + key + "&query=" + movieNam);
return await Task.Run(() => JsonObject.Parse(content));

非同期の HTTP GET と解析を行うための 3 行 (このメソッドをラップするために必要な try/catch は数えません)。

の使用方法を確認できるリソースはほとんどありませんHttpClient

HttpClient は GET と POST を非常にシンプルにします

C++\C#\JS 用の Microsoft の HttpClient サンプル

于 2014-09-11T17:25:57.630 に答える