Как скачать веб -страницу в приложении Metrostyle (Winrt) и C#

StackOverflow https://stackoverflow.com/questions/8300197

Вопрос

Я создаю приложение Metrostyle и хочу использовать API веб -сайта, основанный на методах HTTP GET. Например, для входа я должен загрузить XML, возвращенный этим URL:

websitehost.com/api/login.php?u=username&p=password

Проблема в том, что новые приложения Metrostyle не позволят мне использовать многие методы, которые я использовал в течение многих лет в .net, так как я могу загрузить возвращенный документ XML и проанализировать его?

Это было полезно?

Решение

Вы можете искать это:

    public async Task<string> DownloadPageStringAsync(string url)
    {
        HttpClientHandler handler = new HttpClientHandler()
        { UseDefaultCredentials = true, AllowAutoRedirect = true };

        HttpClient client = new HttpClient(handler);
        HttpResponseMessage response = await client.GetAsync(url);
        response.EnsureSuccessStatusCode();
        return await response.Content.ReadAsStringAsync();
    }

Другие советы

Вы можете использовать либо Windows.Data.Xml.Dom.XmlDocument.LoadFromUriAsync(Uri) метод для автоматического приобретения и разбора XML, или вы можете вручную использовать Windows.Networking.BackgroundTransfer.DownloadOperation экземпляр для вызова веб -службы и получения данных, и Windows.Data.Xml.Dom.XmlDocument.LoadXml(string) анализировать данные.

Вы должны иметь возможность использовать

var data = await (new System.Net.Http.HttpClient()).GetAsync(new Uri("http://wherever"));

А затем делайте все, что вам нужно с данными, включая загрузку его XMLDOCUMENT, XELEME или еще много чего.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top