@zepars

C# WebException Как получить JSON, а не ошибку 401?

Я посылаю GET запрос для авторизации во ВКонтакте, в ответ мне должен прийти JSON ответ. Если авторизация успешна, то я получаю access_token, и все хорошо. Но, если логин/пароль неправильный или требуется капча, то вместо соответствующего JSON результата (как все и происходит, если проделывать ту же процедуру через браузер вручную), мне приходит WebException 401 (несанкционированный), status ошибки - ProtocolError. Вот фрагмент GET запроса:
WebRequest req = WebRequest.Create(Url + "?" + Data);
                WebResponse resp = req.GetResponse();
                Stream stream = resp.GetResponseStream();
                StreamReader sr = new StreamReader(stream);
                string Out = sr.ReadToEnd();
                sr.Close();
                return Out;

Исключение выдает во второй строке.

Как получать JSON ответ от сервера, содержащий соответствующую ошибку?
  • Вопрос задан
  • 947 просмотров
Пригласить эксперта
Ответы на вопрос 2
ImmortalCAT
@ImmortalCAT
C# loving
погуглите Vk Api .Net
там есть уже написанная либа для всего
скачайте и пожксперементируйте
Ответ написан
Комментировать
@Hydro
C#/.NET Developer
401 - это и есть ошибка проваленной аутентификации.
А появление на горизонте WebException является ожидаемым поведением от кода.
Перехватывайте WebException и говорите вызывающей логике, чтобы повторили процедуру аутентификацией с правильной парой логин?пароль.

По результирующим http кодам посмотрите тут, узнаете много нового
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы