Некоторые помогают получить ответ XML от GET-запроса с использованием ASP.NET (см. Код)? - PullRequest
0 голосов
/ 23 апреля 2009

Не могу понять это, см. Код ниже. Попытка сделать GET-запрос к Basecamp и сохранить XML, который он возвращает в памяти, чтобы я мог его проанализировать. Не знаете, как именно «запустить» запрос или получить от него XML, пожалуйста, сообщите.

using System;
using System.Web;
using System.Data;
using System.Xml;
using System.Net;
using System.IO;

public class bc2fb : IHttpHandler {

    private struct projectItem
    {
        int projID;
        string projCode;
        string projName;
    }

    private projectItem[] allProjects = new projectItem[100];

    public void ProcessRequest (HttpContext context) {
        context.Response.Write(GetAllProjects().Value);



    }

    public XmlTextReader GetAllProjects()
    {
        HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create("https://company_name.updatelog.com/projects.xml");

        objRequest.Method = "GET";
        objRequest.ContentType = "application/xml";
        objRequest.Accept = "application/xml";

        string creds = "uname:pass";
        byte[] encData_byte = new byte[creds.Length];
        encData_byte = System.Text.Encoding.UTF8.GetBytes(creds);
        string encodedData = Convert.ToBase64String(encData_byte);

        objRequest.Headers.Add("Authorization", "Basic " + encodedData);

        XmlTextReader projectXML = new XmlTextReader(???WHAT TO DO HERE???);

        return projectXML;

    }


    public bool IsReusable {
        get {
            return false;
        }
    }

}

Ответы [ 2 ]

1 голос
/ 23 апреля 2009
HttpWebResponse response = (HttpWebResponse)objRequest.GetResponse();
XmlTextReader projectXML = new XmlTextReader(response.GetResponseStream());
0 голосов
/ 23 апреля 2009

Вам нужно использовать GetResponse, а затем обработать его. См. Клиентская библиотека REST для .NET, часть 1 .

.

Обратите внимание, что нет части 2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...