sivabur
@sivabur
Заблокировали просто так!

Ошибка Length cannot be less than zero. Parameter name: length при посылке запрос библиотека(xNet) C#?

using (var Request = new HttpRequest())
                {
                    Request.UserAgent = HttpHelper.ChromeUserAgent();
                    Request.Get("http://allo.ua").ToString();  //именно с этим сайтом с другими проблем не возникало
                }


System.ArgumentOutOfRangeException: Length cannot be less than zero.
Parameter name: length


at System.String.Substring(Int32 startIndex, Int32 length)
at xNet.Net.HttpResponse.SetCookie(String value)
at xNet.Net.HttpResponse.ReceiveHeaders()
at xNet.Net.HttpResponse.LoadResponse(HttpMethod method)
at xNet.Net.HttpRequest.SendRequest(HttpMethod method, Uri address, HttpContent content, Boolean reconnection)
at xNet.Net.HttpRequest.Raw(HttpMethod method, Uri address, HttpContent content)
at xNet.Net.HttpRequest.Raw(HttpMethod method, String address, HttpContent content)
at xNet.Net.HttpRequest.Get(String address, RequestParams urlParams)
at Main.Form1.GetContent(String uri) in C:\Users\xaker1\Desktop\диплом\ДИПЛОМНАЯ\Main\Form1.cs:line 301

Сама библиотека XNET
  • Вопрос задан
  • 2408 просмотров
Решения вопроса 1
sivabur
@sivabur Автор вопроса
Заблокировали просто так!
Значит сайт отдает HTTP заголовок без значения. Из за этого данная ошибка.
Тоесть или фиксить самому либу или использовать что то другое.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Nipheris
@Nipheris Куратор тега C#
Судя по коду https://github.com/X-rus/xNet/blob/master/Net/~Htt... и вашему стеку, сайт прислал кривые куки, которые как бы есть (длина не равна нулю), но сформированы неверно. Скорее всего нет разделителя '=' между названием и значением кукиса. xNet этого пережить не смогла. Опять таки судя по стеку врядли, что запрос не посылается, т.к. либа пытается его обрабатывать. Возьмите сниффер (не знаю чем вы смотрите, я бы посоветовал Fiddler, раз у вас HTTP, только не забудьте библиотеке сказать что вы его используете в качестве прокси), и проверьте какой Set-Cookie прилетает от сервера.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы