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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.02.2014, 11:37   #1
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию Загрузка файла на сайт

Подскажите как загрузить файл на сайт http://wot-dossier.appspot.com/ средством idhttp.
Как я понял вот код отвечающий за загрузку.

Код:
<form action="/preview" class="button" enctype="multipart/form-data" method="POST">
Upload
</form>
Не могу догнать как его заполнить. Буду признателен за помощь.

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
PostData:TStringList;
begin

   idhttp1.Request.UserAgent:='Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.25) Gecko/20111212 Firefox/3.6.25';
   idhttp1.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
   idhttp1.Request.AcceptLanguage:='ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3';
   idhttp1.Request.AcceptCharSet:='windows-1251,utf-8;q=0.7,*;q=0.7';
   PostData:=TStringList.Create;
   PostData.Add('enctype=C:\NRXWO2LOFZYDCLTXN5ZGYZDPMZ2GC3TLOMXG4ZLUHIZDAMBRGQ5VGVRUGNJFKUY=.dat');
   Memo1.Text:=idhttp1.Post('http://wot-dossier.appspot.com/preview',PostData);
   PostData.Free;

end;

Последний раз редактировалось -=Virus=-; 19.02.2014 в 11:52.
-=Virus=- вне форума Ответить с цитированием
Старый 19.02.2014, 14:18   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Чувствую за отправку отвечает JS, HTML это всего лишь внешний вид.
Человек_Борща вне форума Ответить с цитированием
Старый 19.02.2014, 14:40   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

TIdMultiPartFormDataStream поможет.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 19.02.2014, 15:38   #4
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
TIdMultiPartFormDataStream поможет.
А если по конкретнее?
Прикладываю файлы JS со страницы.
Вложения
Тип файла: zip pack.zip (126.3 Кб, 8 просмотров)

Последний раз редактировалось -=Virus=-; 19.02.2014 в 15:43.
-=Virus=- вне форума Ответить с цитированием
Старый 19.02.2014, 16:18   #5
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

ну и зачем вы сюда это г вывалили? вам надо смотреть что и как происходит когда файл уходит, а в г капаться надо когда чегото хитрого там происходит
eval вне форума Ответить с цитированием
Старый 19.02.2014, 17:03   #6
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
ну и зачем вы сюда это г вывалили? вам надо смотреть что и как происходит когда файл уходит, а в г капаться надо когда чегото хитрого там происходит
Можно по вежливее? Приложил для того что бы знающие люди помогли разобраться.
-=Virus=- вне форума Ответить с цитированием
Старый 19.02.2014, 17:15   #7
Lardes
Форумчанин
 
Аватар для Lardes
 
Регистрация: 19.08.2011
Сообщений: 329
По умолчанию

-=Virus=-, а что снифер показывает?
Lardes вне форума Ответить с цитированием
Старый 20.02.2014, 01:00   #8
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Код:
uses IdMultiPartFormData;
...
procedure TForm1.Button1Click(Sender: TObject);
var
  f: TIdMultiPartFormDataStream;
begin
  f := TIdMultiPartFormDataStream.Create;
  f.AddFile('dossier', '1.bmp', '');//тут свой файл
  try
    showmessage(IdHTTP1.Post('http://wot-dossier.appspot.com/preview', f));
  except
    on E: EIdHTTPProtocolException do
      if IdHTTP1.ResponseCode = 302 then
        if pos('error', IdHTTP1.Response.Location) > 0 then
          showmessage('Ошибка');
  end;
  f.Free;
end;
Поскольку у меня нету этой игры, то каковы действия сервера при правильном файле я не знаю. Так что берите сниффер и смотрите сами.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 20.02.2014, 13:41   #9
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию

Хотя разобрался. Всё норм заливает. Только сайт хитрее оказался все данные формируют в javascript
Приложу на всякий случай файл игры.
Вложения
Тип файла: zip NRXWO2LOFZYDCLTXN5ZGYZDPMZ2GC3TLOMXG4ZLUHIZDAMBRGQ5VGVRUGNJFKUY=.dat.zip (20.0 Кб, 6 просмотров)

Последний раз редактировалось -=Virus=-; 20.02.2014 в 14:17.
-=Virus=- вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка файла на сайт в С# Shikana Помощь студентам 0 18.03.2012 20:55
Загрузка картинки на сайт Droniwe Работа с сетью в Delphi 0 02.03.2012 08:53
Загрузка файла на сайт cargo29 Работа с сетью в Delphi 23 09.03.2011 20:16
Загрузка фото на сайт? PSix1_73 PHP 1 04.08.2009 04:40
Загрузка изображения на сайт KiDoki Работа с сетью в Delphi 3 22.06.2009 21:27