@StelX

C#. Как исправить ошибку 415 Unsupported Media Type?

Начал писать приложения взаимодействующее с различными api. Запросы проверял в браузере и в приложении. GET-запросы на один из серверов в приложении возвращают ошибку 415 Unsupported Media Type. С другими серверами такой проблемы нет. Chrome получает ответ.

По советам из google пробовал добавить request.ContentType = "application/json", но результата не последовало.

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
            request.Method = "GET";
            request.ContentType = "application/json";
            
            Stream dataStream;
            HttpWebResponse WebResponse = (HttpWebResponse)request.GetResponse(); //  *(415) Unsupported Media Type.
            dataStream = WebResponse.GetResponseStream();
            StreamReader StreamReader = new StreamReader(dataStream);
            ResponseFromServer = StreamReader.ReadToEnd();
            dataStream.Close();
            WebResponse.Close();
            StatusCode = HttpStatusCode.OK;
  • Вопрос задан
  • 204 просмотра
Решения вопроса 1
@StelX Автор вопроса
Вот это помогло
request.AutomaticDecompression = DecompressionMethods.GZip;
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Попробуйте request.Accept
Ответ написан
А на кой вы ставите Content-Type в GET запросе? Этот заголовок ставит та сторона, которая отправляет тело - либо сервер, когда отправляет ответ с телом, либо клиент, когда отправляет запрос с телом (т.е. POST или PUT).

Как уже отметил Олег Погребняк , вам нужен заголовок Accept.
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы