Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.31;
Скачать: CL | DM;

Вниз

Запрос POST   Найти похожие ветки 

 
Neket   (2006-12-13 10:33) [0]

Необходимо делать на сервер POST запрос на который сервер дает ответ в виде маленького XML кода. Подскажите чем лучше воспользоваться для выполнения этого запроса и получения ответа на этот запрос?
TCPClient-ом (либо подобными команентами) пользоваться не хочется потому как придется ещё в тексте запроса указывать всякую служебную информацию.


 
DVM ©   (2006-12-13 10:37) [1]


> TCPClient-ом (либо подобными команентами) пользоваться не
> хочется потому как придется ещё в тексте запроса указывать
> всякую служебную информацию.

Какую еще служебную информацию там надо указывать?


 
Dmitrij_K   (2006-12-13 10:52) [2]

Библиотека Indy
компонент TIdHTTP метод Post


 
DVM ©   (2006-12-13 11:38) [3]


> Dmitrij_K   (13.12.06 10:52) [2]

Так ему же надо без
> TCPClient-ом (либо подобными команентами)

Пусть ответит на [1] сначала


 
Neket   (2006-12-13 12:38) [4]

2 DVM: под служебной информацией имелось ввиду что-то типа такого

GET http://www.delphimaster.ru HTTP/1.0
Accept: */*
Host: url.com
Referer: http://your_page.com
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Content-Type: text/html

Ну и так далее...


 
Neket   (2006-12-13 12:41) [5]

Я не исключаю использование TCPCliet-a d в таком плане
SendText("GET http://www.delphimaster.ru HTTP/1.0"#10#10);
Но может вы ещё что-то предложили бы?


 
DVM ©   (2006-12-13 13:22) [6]


> Но может вы ещё что-то предложили бы?

Если ты хочешь использовать методы Post, Get протокола HTTP, то хочешь-не хочешь, а придется формировать тело запроса в соответствии с требованиями HTTP.


> Я не исключаю использование TCPCliet-a d в таком плане

Можно и так, только тело запроса главное правильно сформировать.


 
DVM ©   (2006-12-13 13:23) [7]


> Но может вы ещё что-то предложили бы?

Winsock

     FRequest := "POST " + FPath + " HTTP/" + FHTTPVersion + #13#10 +
                 "Connection: keep-alive" + #13#10 +
                 "Content-Type: application/x-www-form-urlencoded" + #13#10 +
                 "Content-Length: " + inttostr(Length(FParams)) + #13#10 +
                 "Host: " + FHost + #13#10 +
                 "Accept: text/html, */*" + #13#10 +
                 "User-Agent: user" + #13#10 +
                 "Authorization: Basic " + EncodeBase64(FUserName + ":" + FPassword) + #13#10#13#10;

ReturnCode := send(ASock, Pointer(ARequest)^, Length(ARequest), 0);


 
Neket   (2006-12-13 13:32) [8]

Я просто думал может использовать что-то типа компоненты TIdHTTP метод Post чтобы не формировать эти данные... Чтобы компанента за меня это делала... А я только строчку мне необходимую задавал.


 
DVM ©   (2006-12-13 14:47) [9]


> Neket   (13.12.06 13:32) [8]

Ну так и используй TIdHTTP - лучше и не придумаешь.


 
Плохиш ©   (2006-12-13 15:00) [10]


> Dmitrij_K   (13.12.06 10:52) [2]
> Библиотека Indy
> компонент TIdHTTP метод Post


> Neket   (13.12.06 13:32) [8]
> Я просто думал может использовать что-то типа компоненты
> TIdHTTP метод Post

Я что-то не понимаю или это такое падонкавское программирование?


 
Neket   (2006-12-13 16:33) [11]

Ок... Спасибо... Да и ещё тогда падонкаФский вопрос...
А TIdHTTP XML понимает?


 
Dmitrij_K   (2006-12-13 16:38) [12]


> А TIdHTTP XML понимает?

Понимает все. И китайский тоже.
А вообще глупейший вопрос. Протокол HTTP работает с данными, а не с конкретными форматами файлов.


 
Neket   (2006-12-14 11:42) [13]

2 Dmitrij_K: Да причем тут формат файла :-) :-) :-) :-) :-)
Если XML это открытый язык разметки (Extensible Markup Language, XML) представляет собой подмножество SGML. Предназначением его является обеспечить обслуживание, получение и обработку общего языка SGML в Web так же, как сейчас это происходит с языком HTML. Язык XML разработан для упрощения реализации и взаимодействия между SGML и HTML. Если интересно почитай здесь (http://www2.stack.ru/~julia/XML/REC-xml-19980210.html)
P.S. Я это к чему... Если кто-то не понимает о чем идет речь то господа лучше промолчите.
Кстати вопрос остается открытым.
> А TIdHTTP XML понимает?


 
Dmitrij_K   (2006-12-14 12:01) [14]


> Neket   (14.12.06 11:42) [13]
> > А TIdHTTP XML понимает?


TIdHTTP работает с потоком данных, ему фиолетово xml, html, zip, exe и тд.

ЗЫ
Спасибо за лекцию, для меня ничего нового не написал.
За ссылку отдельная благодарность.



Страницы: 1 вся ветка

Текущий архив: 2006.12.31;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.06 c
2-1165510953
Riply
2006-12-07 20:02
2006.12.31
Получение адреса функции по таблице экспорта.


15-1165956112
hell
2006-12-12 23:41
2006.12.31
вирус


9-1140448162
Fenix
2006-02-20 18:09
2006.12.31
Динамически создаваемые FreeForm.


15-1165809858
Slider007
2006-12-11 07:04
2006.12.31
С днем рождения ! 10 декабря


4-1156236803
Mechanic
2006-08-22 12:53
2006.12.31
Как остановить получение событий колеса мыши?