Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

POST на Delphi (API)

18K
14 февраля 2007 года
22b
16 / / 09.02.2007
Добрый день!
Народ нужна реализация поста на Delphi (необходимо засылать csv файл на скрипт) реализация на winApi подскажите кто что занет.... может у кого уже есть что написаное....

Заранее всем спасибо!
8
14 февраля 2007 года
mfender
3.5K / / 15.06.2005
Всё это давно уже написано. Например, TIdHTTP из Indy - POST и GET по HTTP-протоколу. В Delphi7 уже включен. По Indy хорошую инструкцию на русском ищи у Анатолия Подгорецкого на сайте - он, помнится, хорошо перевёл и от себя добавил.
18K
14 февраля 2007 года
22b
16 / / 09.02.2007
понимаете меня компоненты не устраивают (( мне нужен API.(гонка за размером)
8
14 февраля 2007 года
mfender
3.5K / / 15.06.2005
Цитата: 22b
понимаете меня компоненты не устраивают (( мне нужен API.(гонка за размером)


Не поверишь: у меня программулина с TIdHTTP, TTreeView, TrxDBGrid, кучей датасетов и прочей порчей весит всего (exe) 56кБ. Правда выглядит в IDE невзрачно - пустая форма. Всё создаётся динамически.

Размеров сильно добавляют компоненты, когда их на форме расставляешь.

18K
14 февраля 2007 года
22b
16 / / 09.02.2007
А подскажи пож-та как создать динамически класс этот.... я просто новичок .....
8
14 февраля 2007 года
mfender
3.5K / / 15.06.2005
Цитата: 22b
А подскажи пож-та как создать динамически класс этот.... я просто новичок .....


Не класс, а объект класса... Все объекты создаются конструктором Create.

Вот тебе простейший действующий пример. Надеюсь, он даст пищу для размышлений. Положи на форму TMemo и TButton (это для наглядности). На событие OnClick кнопки напиши вот такое:

Код:
procedure TfrmMain.Button1Click(Sender: TObject);
var
  Fields: TIdMultiPartFormDataStream;
begin
  {Ты посылаешь какие-то данные методом POST.
  Поэтому нужно создать поля с данными (как если
  бы ты отправлял форму из браузера)}
  Fields := TIdMultiPartFormDataStream.Create;
  with Fields do
  begin
    Fields.AddFormField('Field1', 'Value1');
    Fields.AddFormField('Field2', 'Value2');
  end;
  {Создаём компонент и отправляем поток скрипту}
  Memo1.Text := TIdHTTP.Create(Self).Post('http://твой_сервер/http.php', Fields);
end;


Не забудь в секцию uses написать следующие файлы: IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, IdMultipartFormData

Ну и сделай файлик на сервере, на котрый отправляется вся эта бодяга. Если он PHP, то напиши там print_r($_POST);

Надеюсь, это как-нибудь подтолкнёт тебя для дальнейшего копания в Delphi.

ЗЫ. Не гонись за малыми размерами. Это видимость. API хорошо для себя. Там имеется тенденция чему-то всегда пропадать и появляться. Indy - вечно. :)
303
14 февраля 2007 года
makbeth
1.0K / / 25.11.2004
Цитата: mfender
Не поверишь: у меня программулина с TIdHTTP, TTreeView, TrxDBGrid, кучей датасетов и прочей порчей весит всего (exe) 56кБ. Правда выглядит в IDE невзрачно - пустая форма. Всё создаётся динамически.

Размеров сильно добавляют компоненты, когда их на форме расставляешь.


Не поверю ;) По крайней мере со стандартными VCL компонентами...
Похоже на компиляцию с пакетами. Попробуй экзешник на соседней машине запустить, где дельфи не установлен ;)

8
14 февраля 2007 года
mfender
3.5K / / 15.06.2005
Цитата: makbeth
Не поверю ;) По крайней мере со стандартными VCL компонентами...
Похоже на компиляцию с пакетами. Попробуй экзешник на соседней машине запустить, где дельфи не установлен ;)


Работает на любых компутерах.

Слукавил я, конечно. У меня многое по dll распихано. :)

Но всё равно, гоняться за маленькими размерами, создавая самому себе похмелье и бессоные ночи - не дело. К тому же это хочет делать человек, который не знает, как создать объект...

18K
14 февраля 2007 года
22b
16 / / 09.02.2007
а где взять исходники Indy подскажите плз...
18K
14 февраля 2007 года
22b
16 / / 09.02.2007
Не забудь в секцию uses написать следующие файлы: IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, IdMultipartFormData
8
14 февраля 2007 года
mfender
3.5K / / 15.06.2005
Цитата: 22b
а где взять исходники Indy подскажите плз...


У тебя какое Delphi? Начиная с седьмого, Indy включено в Delphi вместе с .pas.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог