Форум программистов, компьютерный форум, киберфорум
Delphi: Сети
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/145: Рейтинг темы: голосов - 145, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 49
1

JSON и Delphi. Как реализовать POST запрос?

17.01.2014, 17:40. Показов 27247. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, жители форума. Может быть мой вопрос глупый, но все же спрошу. Кстати, перерыл весь форум-ответа не нашел.
Есть программа на телефоне, которая отправляет данные на сервер. Мне стало интересно и я решил перехватить потоки с телефона. Вроде получилось. Результат: Post запрос с JASON {"userId":"12890"}
Теперь мне надо искусственно сделать этот запрос, написал код в делфи, обычным способом не получается:
Delphi
1
2
3
log:=tstringlist.create;
log.add('userId=12890');
memo1.text:=idhttp1.post('URL',log);
И вот, собственно, вопрос: Как мне реализовать post запрос json?
Буду очень признателен.

Добавлено через 2 часа 38 минут
Народ, неужели никто не знает? Объясните, пожалуйста, новичку)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2014, 17:40
Ответы с готовыми решениями:

Как отправить Post запрос с JSON на сервер
Как решить данную задачу? Please, perform the following task to complete a registration for...

Как отправлять get, post запрос а затем обработать в формате json?
Как на android srudio отправить post, ger запрос, затем обработать ответ в формате json

Отправить POST запрос и получить json данные с сервера. Как сделать?
Добрый день. Мне нужно создать html форму с двумя полями username и password, методом POST...

Как получть post запрос с сервера на Delphi
Приложение "Отправитель" отправляет post запрос на сервер, после чего на сервер отправляет текст...

9
174 / 160 / 71
Регистрация: 22.02.2013
Сообщений: 1,769
Записей в блоге: 2
17.01.2014, 17:56 2
Delphi
1
log.add('"userId": "12890"');
вот так попробуй
0
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 49
17.01.2014, 18:04  [ТС] 3
Цитата Сообщение от NotBeginner Посмотреть сообщение
Delphi
1
log.add('"userId": "12890"');
вот так попробуй
Друг, ну не до такой же степени, чтоб это не попробовать))
Тут дело совсем в другом. С JSON как-то по-другому надо работать.
0
174 / 160 / 71
Регистрация: 22.02.2013
Сообщений: 1,769
Записей в блоге: 2
17.01.2014, 20:31 4
http://www.webdelphi.ru/2011/1... -2010-xe2/
читал?

Добавлено через 1 минуту
http://sourceforge.net/projects/lkjson/ а вот библиотека для работы

Добавлено через 20 секунд
http://sourceforge.net/projects/is-webstart/ или вот

Добавлено через 3 минуты
Delphi
1
2
3
4
5
6
7
8
http := TIdHttp.Create(nil);
http.HandleRedirects := true;
http.ReadTimeout := 5000;
jsonToSend := TStringList.create;
jsonToSend.Text := 'json={"name":"Peter Pan"}';
Memo1.Lines.Text := http.Post('http://www.website.com/test.php', jsonToSend);
jsonToSend.free;
http.free;
вот пример нашел
1
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 49
21.01.2014, 14:47  [ТС] 5
Цитата Сообщение от NotBeginner Посмотреть сообщение
http://www.webdelphi.ru/2011/1... -2010-xe2/
читал?

Добавлено через 1 минуту
http://sourceforge.net/projects/lkjson/ а вот библиотека для работы

Добавлено через 20 секунд
http://sourceforge.net/projects/is-webstart/ или вот

Добавлено через 3 минуты
Delphi
1
2
3
4
5
6
7
8
http := TIdHttp.Create(nil);
http.HandleRedirects := true;
http.ReadTimeout := 5000;
jsonToSend := TStringList.create;
jsonToSend.Text := 'json={"name":"Peter Pan"}';
Memo1.Lines.Text := http.Post('http://www.website.com/test.php', jsonToSend);
jsonToSend.free;
http.free;
вот пример нашел
Спасибо, а как можно принять json? В memo просто так не загружается. А видно, что получает только json в ответ на json запрос.
0
174 / 160 / 71
Регистрация: 22.02.2013
Сообщений: 1,769
Записей в блоге: 2
21.01.2014, 17:39 6
DjTurxan, почему в мемо не грузиться? ошибка или что? попробуйте в файл сохранить
0
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 49
21.01.2014, 19:25  [ТС] 7
Без ошибок, просто пустой memo.
Попробую, отпишусь.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32970 / 21283 / 8173
Регистрация: 22.10.2011
Сообщений: 36,556
Записей в блоге: 8
21.01.2014, 20:09 8
JSON нельзя передавать через TStringList, метод Post перековеркает все данные в стринглисте. Запиши свои данные, скажем, в TStringStream, который будет передаваться без искажений... И не забудь выставить ContentType в "application/json"
0
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 49
21.01.2014, 22:53  [ТС] 9
Цитата Сообщение от UI Посмотреть сообщение
JSON нельзя передавать через TStringList, метод Post перековеркает все данные в стринглисте. Запиши свои данные, скажем, в TStringStream, который будет передаваться без искажений... И не забудь выставить ContentType в "application/json"
Спасибо, попробую. А Content Type чего? Memo или tstringstream?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32970 / 21283 / 8173
Регистрация: 22.10.2011
Сообщений: 36,556
Записей в блоге: 8
21.01.2014, 23:23 10
Компонента, который выполняет Post-запрос:
Delphi
1
idhttp1.Request.ContentType := 'application/json';
0
21.01.2014, 23:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.01.2014, 23:23
Помогаю со студенческими работами здесь

Json post запрос
Здравствуйте. Помогите отправить post запрос помощью библиотеки Qt. На java отправлял так: ...

Post запрос в формате json
Пытаюсь отправить POST запрос на сервер: WebClient wc= new WebClient(); ...

POST запрос с JSON на VBA
Доброго дня! Пытаюсь создать групповой запрос в БДИП ФССП (https://api-ip.fssprus.ru/about) Не...

POST запрос в JSON формате
Подскажите, как выполнить добавление в БД посредством POST запроса в виде: { "user": "Ivan",...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru