HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 17.06.2010, 06:44
minei
Новичок
Регистрация: 30.04.2009
Сообщений: 14
Провел на форуме:
30804

Репутация: 0
По умолчанию

вот так у меня написана авторизация на сайте
Код:
procedure TForm1.Button1Click(Sender: TObject);  
var  http:thttpsend;  res,data:string;  
begin  
//создаём обьект  
http:=thttpsend.Create;  
//формируем заголовок для отправления  
http.Headers.Append('Connection: close');  http.UserAgent:='Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.7) Gecko/2009021910 Firefox/3.0.7';  http.MimeType:='application/x-www-form-urlencoded';  
//формируем данные для ПОСТ запроса  data:='name='+edit1.Text+'&password='+edit2.text+'&x=0&y=0';  http.Document.Write(Pointer(data)^, Length(data));  
//посылаем запрос 
 if http.HTTPMethod('POST','http://www.proplay.ru') then     
begin       
//обрабатываем ответ     SetLength(res,http.Document.Size);  	 
http.Document.Read(pointer(res)^,http.Document.Size);     
if pos('301',http.Headers.Text)<>0 then     
begin label3.Caption:='Авторизация прошла успешно';     end  else      label3.Caption:='Авторизация не удалась';     end     else  showmessage('Ошибка подключения');  
//чистимся  
http.Free;  end;    end.
вроде работает, выдает редирект в сниффере на ссылку пользователя, а как мне создать такой пост запрос чтобы он отправлял сообщение на форум. страница допустим
http://www.proplay.ru/forums/cs/64457/ или http://www.proplay.ru/forums/cs/64457/reply я не знаю. Переменная там используется только одна body в ней передается сообщение.
Когда я на сайте пишу сообщение то потом перекидывает в тему, а из программы в сниффере показывает, что перекидывает опять на эту страницу reply то есть сообщение не пропускает выходит что-то.
 
Ответить с цитированием

  #2  
Старый 17.06.2010, 09:24
Vlad&slav
Участник форума
Регистрация: 01.01.2009
Сообщений: 138
Провел на форуме:
817404

Репутация: 82
Отправить сообщение для Vlad&slav с помощью ICQ
По умолчанию


Ктонить знает как поправить?
 
Ответить с цитированием

  #3  
Старый 17.06.2010, 09:28
assdancer
Новичок
Регистрация: 09.01.2010
Сообщений: 5
Провел на форуме:
25479

Репутация: 2
Отправить сообщение для assdancer с помощью ICQ
По умолчанию

Цитата:
Сообщение от Vlad&slav  

Ктонить знает как поправить?
ERROR_SHARING_VIOLATION: Файл существует, но используется другим приложением.
 
Ответить с цитированием

  #4  
Старый 17.06.2010, 09:39
wolmer
Постоянный
Регистрация: 12.05.2009
Сообщений: 395
Провел на форуме:
4761503

Репутация: 229
По умолчанию

Цитата:
Сообщение от Vlad&slav  

Ктонить знает как поправить?
Попробуй

Код:
{$I-}
Rewrite(f);
{$I+}
 
Ответить с цитированием

  #5  
Старый 17.06.2010, 10:27
fenixelite
Участник форума
Регистрация: 07.02.2010
Сообщений: 189
Провел на форуме:
870084

Репутация: 79
Отправить сообщение для fenixelite с помощью ICQ
По умолчанию

Блин, ничего не пойму с авторизацией.... Ну не проходит она... Редиректит на страницу с профилем, но вход не осуществлен(т.е на странице с моим профилем: "Чтобы увидеть полную информацию о пользователе, войдите в систему. ") Вроде дельфи уже другую скачал, но все тоже самое Код авторизации в посте №#6737(но в коде я уверен на 99%, т.к неделю назад им авторизовывался)... Проблема с куки насколько я понял, в cookiecollection после авторизации только :

Код:
l=xxxxxxx; path=/; domain=login.vk.com
p=ca505b639ddeba5a27cdf28138eafd6bba05; path=/; domain=login.vk.com
Надеюсь на вашу помощь. Помощь могу оплатить(просто срочно нужно)....
 
Ответить с цитированием

  #6  
Старый 17.06.2010, 10:38
heretic1990
Постоянный
Регистрация: 02.07.2008
Сообщений: 472
Провел на форуме:
3728999

Репутация: 444
По умолчанию

fenixelite, попробуй так
Код:
function GetSubStr(InputStr, BeginStr, EndStr: String): String;
var
  s: String;
  sp, ep: Integer;
begin
  Result := '';
  if pos(BeginStr, InputStr) <> 0 then begin
    sp := pos(BeginStr, InputStr)+length(BeginStr);
    s := copy(InputStr,sp,length(InputStr));
    ep := pos(EndStr,s)-1;
    Result := copy(s,1,ep);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  mp: TIdMultiPartFormDataStream;
begin
  IdHTTP1.Get('http://vkontakte.ru');
  IdHTTP1.Request.Referer := 'Referer: http://vkontakte.ru/login.php';

  mp := TIdMultiPartFormDataStream.Create;
  mp.AddFormField('op', 'a_login_attempt');
  Memo1.Lines.Text := IdHTTP1.Post('http://vkontakte.ru/login.php', mp);
  Memo1.Lines.SaveToFile('c:\111.html');
  mp.Free;

  mp := TIdMultiPartFormDataStream.Create;
  mp.AddFormField('act', 'login');
  mp.AddFormField('success_url', '');
  mp.AddFormField('fail_url', '');
  mp.AddFormField('try_to_login', '1');
  mp.AddFormField('to', '');
  mp.AddFormField('vk', '');
  mp.AddFormField('email', Edit1.Text);
  mp.AddFormField('pass', Edit2.Text);
  mp.AddFormField('expire', '1');
  Memo1.Lines.Text := IdHTTP1.Post('http://login.vk.com', mp);
  Memo1.Lines.SaveToFile('c:\222.html');
  mp.Free;

  mp := TIdMultiPartFormDataStream.Create;
  mp.AddFormField('op', 'slogin');
  mp.AddFormField('redirect', '1');
  mp.AddFormField('expire', '1');
  mp.AddFormField('to', '');
  mp.AddFormField('s', GetSubStr(Memo1.Text, 'id=''s'' value=''', ''''));
  mp.AddFormField('email', 'alena@tdutn.com');
  mp.AddFormField('pass', 'flouer');
  mp.AddFormField('expire', '1');
  Memo1.Lines.Text := IdHTTP1.Post('http://vkontakte.ru/login.php', mp);
  Memo1.Lines.SaveToFile('c:\333.html');
  mp.Free;

  if pos('(это Вы)', Memo1.Text) > 0 then
    MessageDlg('Залогинились.'+#13#10+GetSubStr(Memo1.Text, '<h1> <b>Online</b>', '<span>'), mtInformation, [mbOK], 0)
  else
    MessageDlg('Не залогинились!', mtInformation, [mbOK], 0);
end;
 
Ответить с цитированием

  #7  
Старый 17.06.2010, 11:00
fenixelite
Участник форума
Регистрация: 07.02.2010
Сообщений: 189
Провел на форуме:
870084

Репутация: 79
Отправить сообщение для fenixelite с помощью ICQ
По умолчанию

heretic1990, да тоже самое все... проблема с куками... Remixsid не приходит, а без него не авторизоваться..... Щас попробую indy обновить..
 
Ответить с цитированием

  #8  
Старый 17.06.2010, 11:03
heretic1990
Постоянный
Регистрация: 02.07.2008
Сообщений: 472
Провел на форуме:
3728999

Репутация: 444
По умолчанию

на новой инди у меня всё работало хорошо.
 
Ответить с цитированием

  #9  
Старый 17.06.2010, 11:10
fenixelite
Участник форума
Регистрация: 07.02.2010
Сообщений: 189
Провел на форуме:
870084

Репутация: 79
Отправить сообщение для fenixelite с помощью ICQ
По умолчанию

heretic1990, да и TrueBit через мой код авторизовался... ладно щас инди обновить попробую..
 
Ответить с цитированием

  #10  
Старый 17.06.2010, 12:49
fenixelite
Участник форума
Регистрация: 07.02.2010
Сообщений: 189
Провел на форуме:
870084

Репутация: 79
Отправить сообщение для fenixelite с помощью ICQ
По умолчанию

Обновил... не помогло... я в шоке Оо
У кого то еще решения есть?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Wi-Fi, BT] Задай вопрос - получи ответ! Alexsize Беспроводные технологии/Wi-Fi/Wardriving 2568 25.04.2026 12:58
[jQuery] - Задай вопрос, получи ответ Isis PHP 62 25.12.2009 03:25



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ