我有一个字符串,我需要在Windows Phone的8它看起来像这样要发布:
https://www.scoreoid.com/api/getPlayers?api_key=[apiKey]&game_id=[gameID]&response=xml&username=[username]&password=[password]
这串简单地返回另一个字符串(格式化为XML,我在我后面的代码解析)。
我还没有找到一个简单的解决方案,这就像在Windows 8中。
编辑:找到了解决我的问题与rciovati和一次助攻的HttpClient库。
这里是我的简单的代码:
var httpClient = new HttpClient();
return await httpClient.GetStringAsync(uri + "?" + post_data);
使用新的HTTP客户端库是很容易的:
var values = new List<KeyValuePair<string, string>>
{
new KeyValuePair<string, string>("api_key", "12345"),
new KeyValuePair<string, string>("game_id", "123456")
};
var httpClient = new HttpClient(new HttpClientHandler());
HttpResponseMessage response = await httpClient.PostAsync(url, new FormUrlEncodedContent(values));
response.EnsureSuccessStatusCode();
var responseString = await response.Content.ReadAsStringAsync();
你可以找到关于该库的其它信息在这里 。
下面是从非常有用的博客文章安迪·威格利有关如何操作的Http网络上的Windows Phone 8 WinPhoneExtensions包装库他讲的基本上是模拟网络编程,你可以在Win8中做的异步/ AWAIT模型。
http://blogs.msdn.com/b/andy_wigley/archive/2013/02/07/async-and-await-for-http-networking-on-windows-phone.aspx