我有一个字符串,我需要在Windows Phone 8中POST。它看起来像这样:
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);
答案 0 :(得分:24)
使用新的Http Client Library非常简单:
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();
您可以找到有关此库here的其他信息。
答案 1 :(得分:0)
以下是来自Andy Wigley的关于如何在Windows Phone 8上进行Http网络的非常有用的博客文章。他所说的WinPhoneExtensions包装库基本上模拟了你可以在Win8中进行的网络编程的异步/等待模型。 / p>