HttpWebRequest с прокси - настройка куки - PullRequest
4 голосов
/ 20 февраля 2012

Вот мой код:

        var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost/jsonrpc.cgi");
        httpWebRequest.ContentType = "application/json";
        httpWebRequest.Method = "POST";
        using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
        {
            string json = "someParameters";
            streamWriter.Write(json);
        }
        var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
        using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
        {
            var responseText = streamReader.ReadToEnd();
        }

        string Bugzilla_logincookie= httpResponse.Headers.ToString();
        Bugzilla_logincookie= Bugzilla_logincookie.Substring(plsWork .IndexOf("logincookie") + 12);
        Bugzilla_logincookie= Bugzilla_logincookie.Substring(0, plsWork .IndexOf(";"));

        CookieContainer cc = new CookieContainer();
        cc.SetCookies(new Uri("http://localhost"), Bugzilla_logincookie);
        var httpWebRequest2 = (HttpWebRequest)WebRequest.Create("http://localhost/jsonrpc.cgi");
        httpWebRequest2.ContentType = "application/json";
        httpWebRequest2.Method = "POST";
        httpWebRequest2.Proxy.Credentials = new NetworkCredential("username", "password");
        httpWebRequest2.CookieContainer = cc;

        using (var streamWriter2 = new StreamWriter(httpWebRequest2.GetRequestStream()))
        {
            string json = "someParametersForJsonCall";
            streamWriter2.Write(json);
        }
        var httpResponse2 = (HttpWebResponse)httpWebRequest2.GetResponse();
        using (var streamReader2 = new StreamReader(httpResponse2.GetResponseStream()))
        {
            var responseText = streamReader2.ReadToEnd();
        }

У меня проблема с использованием прокси.Я пытаюсь сделать следующее: использовать прокси для http://www.bugzilla.org/docs/tip/en/html/api/Bugzilla/WebService/User.html, чтобы вызвать метод входа в систему, а затем сохранить куки-ответы и отправлять их при каждом вызове сеанса.Я получаю эту ошибку:

"You must log in before using this part of Bugzilla."

Что я по ошибке использую?

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