Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> HttpClient JSON ответ 400 bad request 
V
    Опции темы
chip_and_dayl
Дата 10.10.2014, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: нет
Всего: 9



Всем привет

есть следующий код

Код

using (var httpClient = new HttpClient())
            {
                httpClient.BaseAddress = new Uri("https://api.twitter.com/1.1/search/tweets.json");
                httpClient.DefaultRequestHeaders.Accept.Clear();
                httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                //httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", "YW5vbnltb3VzOmFub255bW91cw==");

                var message = new
                {
                    q = "bad",
                    //password = "M@mie!duCanta1l"
                };

                var jsonObject = JsonConvert.SerializeObject(message);


                HttpContent content = new StringContent(jsonObject.ToString(), Encoding.UTF8);
                content.Headers.ContentType = new MediaTypeHeaderValue("application/json");


                HttpResponseMessage response = httpClient.PostAsync(httpClient.BaseAddress, content).Result;
                string statusCode = response.StatusCode.ToString();

                response.EnsureSuccessStatusCode();
                Task<string> responseBody = response.Content.ReadAsStringAsync();
            }


Который возвращает код ошибки 400 bad request (statusCode )

Помогите разобраться в чем проблема

Заранее спасибо


--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
jonie
Дата 10.10.2014, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 22
Всего: 118



а собственно мы-то чем можем помочь, если сервер не понимает ваш запрос?
Берите fiddler и курите что передаётся, сравниваете с тем что надо передавать (по докам или примерам) и делайте чтобы было также...


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
sgrey
Дата 12.10.2014, 04:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 15.4.2006

Репутация: нет
Всего: 4



bad request - это ошибка в запросе. Как сказал jonie - надо смотреть документацию api и исправлять запрос. Вообще вот есть неплохой инструмент с помощью которого можно на твиттер запросы строить https://dev.twitter.com/rest/tools/console 
PM MAIL   Вверх
chip_and_dayl
Дата 13.10.2014, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: нет
Всего: 9



Написал след. функцию. Все работает.

Всем спс

Код

 private bool SendMessage(List<TeamLocation> listteamlocation) 
        {
            using (var httpClient = new HttpClient())
            {
                httpClient.DefaultRequestHeaders.Accept.Clear();
                httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", "fgdfgfdgfd==");

                var jsonObjectLocation = JsonConvert.SerializeObject(listteamlocation);

                HttpContent content = new StringContent(jsonObjectLocation, Encoding.UTF8);
                content.Headers.ContentType = new MediaTypeHeaderValue("application/json");

                HttpResponseMessage response = httpClient.PostAsync(new Uri("http://xxxx.com/gps-tracking/coordinates?imei=" + Utils.Utils.GetMobId()), content).Result;
                return HttpStatusCode.OK == response.StatusCode;
            }
        }



--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0497 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.