如何在Windows Phone 8中使用HttpClient

时间:2013-07-01 16:04:59

标签: windows-phone-8 httpclient

嘿大家我对这件事有很大的疑问。我正在尝试在我的新项目中使用HttpClient方法。我试试这段代码:

        var httpClient = new HttpClient();
        var request = await httpClient.GetAsync(new Uri("http://www.google.com/",                     UriKind.RelativeOrAbsolute));
        var txt = request.Content.ReadAsStringAsync();
        MessageBox.Show(txt.Result);

我认为这是真正的代码,因为我在Console应用程序中编写它并且工作正常。然后我打开一个新的WindowsPhone 8项目并编写此代码。并且代码不起作用,它返回Null。有时它有效但通常不行。我认为我的Visual Studio工作不好,我删除它并重新安装它,没有任何改变。你觉得怎么样?

2 个答案:

答案 0 :(得分:1)

试试这个。

var httpClient = new HttpClient();
        var response = await httpClient.GetAsync(new Uri("http://www.google.com/",                     UriKind.RelativeOrAbsolute));
        response.EnsureSuccessStatusCode();
        var txt = response.Content.ReadAsStringAsync();
        MessageBox.Show(txt.Result);

在行response.EnsureSuccessStatusCode();中创建断点,以确保每次响应httpcode为200。

答案 1 :(得分:0)

您不应该致电Result。试试这个:

var httpClient = new HttpClient();
var request = await httpClient.GetAsync(new Uri("http://www.google.com/", UriKind.RelativeOrAbsolute));
var txt = await request.Content.ReadAsStringAsync();
MessageBox.Show(txt);