Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.07.2015, 14:54   #21
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Браузер вообще не имеет методов для отправки POST-запросов.
Если речь идет о компоненте TWebBrowser, то там есть метод для отправки POST запроса:
Код:
procedure Navigate(const URL: WideString; var Flags: OleVariant; var TargetFrameName: OleVariant;
var PostData: OleVariant; var Headers: OleVariant); overload;
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).
Krasiosoft вне форума Ответить с цитированием
Старый 07.07.2015, 15:08   #22
nibufep
Форумчанин
 
Регистрация: 02.08.2014
Сообщений: 476
По умолчанию

Так кто-нибуть подскажет как исправить код?
nibufep вне форума Ответить с цитированием
Старый 07.07.2015, 15:20   #23
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А ты проверяешь на сервере приход?
Или смотришь в сниффере?
На сервер то оно может нормально приходит.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.07.2015, 15:23   #24
nibufep
Форумчанин
 
Регистрация: 02.08.2014
Сообщений: 476
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А ты проверяешь на сервере приход?
Или смотришь в сниффере?
На сервер то оно может нормально приходит.
По снифферу смотрю, запроса нет.
nibufep вне форума Ответить с цитированием
Старый 07.07.2015, 15:30   #25
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Так кто-нибуть подскажет как исправить код?
Этот код не надо править.
Надо его выкинуть, затем чётко поставить задачу, максимально абстрагируясь от GUI, и написать свой хороший, годный код с нуля.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 07.07.2015, 15:37   #26
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Что-то вроде этого должно быть:
Код:
var
    strData: string;
    PostData: OleVariant;
    Headers: OleVariant;
    i: Integer;
begin
    strData := 'Param1Name=' + HTTPEncode(Param1Value) + '&' +
        'Param2Name=' + HTTPEncode(Param2Value) + ...;

    PostData := VarArrayCreate([0, Length(strData) - 1], varByte);

    for i := 1 to Length(strData) do
        PostData[i-1] := Ord(strData[i]);

    Headers := 'Content-Type: application/x-www-form-urlencoded' + #10#13;

    WebBrowser1.Navigate('http://www.programmersforum.ru', EmptyParam, EmptyParam, PostData, Headers);
end;
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).
Krasiosoft вне форума Ответить с цитированием
Старый 07.07.2015, 15:47   #27
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
По снифферу смотрю, запроса нет.
Дык а на сервере проверял? На сервер приходит то? Сниффер не всегда покажет то что нужно.
Цитата:
Что-то вроде этого должно быть:
Я бы не советовал так работать с юникодом. Должны быть функции, которые формируют строку в OleVariant. Я просто не пойму почему не написать
Код:
var
EncodedStr,Header: OleVariant;
begin
EncodedStr := 'text=x';
Header := 'Content-Type: application/x-www-form-urlencoded' + #10#13;
WebBrowser1.Navigate('http://', EmptyParam,EmptyParam, EncodedStr , Header);
end;
Нет под рукой Делфи, проверить не смогу, но почему так не попробовал? Или пробовал?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.07.2015, 15:58   #28
nibufep
Форумчанин
 
Регистрация: 02.08.2014
Сообщений: 476
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Дык а на сервере проверял? На сервер приходит то? Сниффер не всегда покажет то что нужно.
И на сервер не приходит.
Цитата:
Сообщение от Stilet Посмотреть сообщение
Я просто не пойму почему не написать
Код:
var
EncodedStr,Header: OleVariant;
begin
EncodedStr := 'text=x';
Header := 'Content-Type: application/x-www-form-urlencoded' + #10#13;
WebBrowser1.Navigate('http://', EmptyParam,EmptyParam, EncodedStr , Header);
end;
Нет под рукой Делфи, проверить не смогу, но почему так не попробовал? Или пробовал?
Так запрос как GET уходит.
nibufep вне форума Ответить с цитированием
Старый 07.07.2015, 16:09   #29
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Из хелпа:
Цитата:
PostData contains the data sent to the server when using Navigate to generate an HTTP POST message. If PostData is NULL, Navigate generates an HTTP GET message. PostData is ignored if URL does not specify an HTTP URL.
Так что не может он get делать. или хелп врет.
Вот чувак тоже мучается: http://www.programmersforum.ru/showthread.php?p=712053
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.07.2015, 16:20   #30
nibufep
Форумчанин
 
Регистрация: 02.08.2014
Сообщений: 476
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Так что не может он get делать. или хелп врет.
Ну сниффер и сервер видет как GET.
nibufep вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отправить POST запрос nibufep PHP 9 30.09.2015 17:26
Отправить POST-запрос на сервер sarmat84 Работа с сетью в Delphi 4 21.08.2012 10:44
SQL запрос на текущую запись SERG1980 БД в Delphi 5 12.11.2010 14:20
Как вставлять WordArt и TextBox на "текущую" страницу? Diego__ Microsoft Office Word 12 11.09.2009 18:08