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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.08.2010, 18:48   #1
KentOne
 
Регистрация: 03.08.2010
Сообщений: 4
Радость [Delphi+TWebBrowser] Бинарные данные в PostData

Всем привет
Использую Delphi 7 и TWebBrowser.
Хочу увидеть, что WebBrowser передает серверу при отправке данных методом POST, для этого использую такой код:

Код:
function Variant2Str(V:OleVariant):string;
var Data:pointer;
    S: TMemoryStream;
begin
Data := VarArrayLock(V);
try
S := TMemoryStream.Create;
try
S.Write(Data^, VarArrayHighBound(V, 1) - VarArrayLowBound(V, 1) + 1);
S.Position := 0;
s.SaveToFile('d:\1234.txt');
finally
S.Free;
end;
finally
VarArrayUnlock(V);
end;


procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
  Variant2Str(PostData);
end;
Захожу на любой сайт с авторизацией, заполняю поля логин/пароль, нажимаю кнопочку "войти" и вижу переданные параметры в файле 1234.txt. Паралельно смотрю, что получаю в снифере. Данные в снифере и в файле 1234.txt одинаковые.

ПРОБЛЕМА: если заливаю какой либо файл методом Post, то данные в моем 1234.txt и данные снифера отличаются.

Пример: заливаю файл 1.txt с содержанием '8888888888' на upload.ua
То, что видит снифер:
Код HTML:
-----------------------------7da69342b03d2
Content-Disposition: form-data; name="upfile"; filename="1.txt"
Content-Type: text/plain

8888888888
-----------------------------7da69342b03d2
Content-Disposition: form-data; name="descr"

777
-----------------------------7da69342b03d2
Content-Disposition: form-data; name="pprotect"


-----------------------------7da69342b03d2
Content-Disposition: form-data; name="regagree"

on
-----------------------------7da69342b03d2
Content-Disposition: form-data; name="regSubmit"

.........!
-----------------------------7da69342b03d2--
То, что остается в файле 1234.txt
Код HTML:
-----------------------------7da69342b03d2
Content-Disposition: form-data; name="upfile"; filename="1.txt"
Content-Type: text/plain
Т.е. пропадает информация о загруженных файлах.
Пробовал на разных ресурсах, как только доходит очередь до того места где в PostData должен быть отправляемый файл данные не сохраняются

Последний раз редактировалось KentOne; 04.08.2010 в 14:26.
KentOne вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Где ошибка в запросе? Bendebej SQL, базы данных 1 03.02.2010 17:09
Как при Post-запросе получать только кукисы Voody Работа с сетью в Delphi 11 14.12.2009 21:25
Не совсем понимаю, что нужно найти в задании. greenypeace Помощь студентам 2 08.06.2009 13:50
Не получается в Post запросе передать длинный текст theYozh Работа с сетью в Delphi 17 18.05.2009 21:43
замена в post-запросе schnaps Работа с сетью в Delphi 1 17.03.2009 21:48