Simple HTTP POST in Windows Phone 8

本文关键字:Phone Windows in HTTP POST Simple | 更新日期: 2023-09-27 18:10:19

我有一个字符串,我需要在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);

Simple HTTP POST in Windows Phone 8

使用新的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();

你可以在这里找到关于这个库的其他信息

这是Andy Wigley关于如何在Windows Phone 8上实现Http网络的一篇非常有用的博文。他所说的WinPhoneExtensions包装器库基本上模拟了Win8中可以实现的网络编程的async/await模型。

http://blogs.msdn.com/b/andy_wigley/archive/2013/02/07/async-and-await-for-http-networking-on-windows-phone.aspx