ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

POST запрос...
  #1  
Старый 25.11.2009, 15:14
Аватар для Kandi
Kandi
Познающий
Регистрация: 18.11.2009
Сообщений: 44
Провел на форуме:
134032

Репутация: 3
Отправить сообщение для Kandi с помощью ICQ
Question POST запрос...

вот написал такой пост запрос. Кинул на Форму 2 Edit-a, 2Button, 1memo, IdHTTP1, IdCookieManager1...Ну и собственно первой кнопке дал пост запрос, а второй Close;
Написал код так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  Http  : TidHttp;
  CM    : TidCookieManager;
  Data  : TStringList;
  StrPage, UserID,  UserName  :  String;
  i : integer;
begin
  try
    Http := TIdHTTP.Create(Self);
    Data := TStringList.Create;
    CM := TidCookieManager.Create(Http);
    Http.AllowCookies := true;
    Http.CookieManager := CM;
    Http.HandleRedirects := true;

    Http.Request.Host:='login.vk.com';
    Http.Request.UserAgent:='Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10';
    Http.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
    Http.Request.AcceptLanguage:='ru,en-us;q=0.7,en;q=0.3';
    Http.Request.AcceptCharSet:='windows-1251,utf-8;q=0.7,*;q=0.7';
    Http.Request.Referer:='http://vkontakte.ru/';

    Data.Add('login=login');
    Data.Add('email=' + Edit1.Text);
    Data.Add('pass=' + Edit2.Text);
    StrPage := Http.Post('http://login.vk.com/?act=login', Data);
  finally
    Data.Free;
    CM.Free;
    Http.Free;
  end;

  if Pos('<title>В Контакте | Вход</title>',StrPage) <> 0 then
    ShowMessage('Авторизация провалилась')
  else
    ShowMessage('Авторизация прошла успешно');

  Memo1.Lines.Text := StrPage;
end;
Когда нажимаю button пишет "Авторизация прошла успешно"....т.е. не находит код:
Код:
<title>В Контакте | Вход</title>

пробовал еще с кодом:
Код:
>Такой почтовый адрес не зарегистрирован, либо пароль неверный.</div>
Что то я сам запутался с этими запросами.....правильно ли я его переделал подскажите ?

Вот код анализатора...:

Код:
http://vkontakte.ru/login.php

POST /login.php HTTP/1.1
Host: vkontakte.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.5) Gecko/20091102 MRA 5.4 (build 02647) Firefox/3.5.5 WebMoney Advisor
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Referer: http://vkontakte.ru/
Content-Length: 18
Cookie: remixlang=0; remixchk=5; remixautobookmark=30; remixclosed_tabs=0; remixgroup_closed_tabs=0; remixfilters=8191; remixdeffriendgroups=164; remixnews_privacy_filter=0; remixnews_types=2147478270; remixclosed_tabs=6; remixref=1; remixnews_privacy_filter=0; remixgroup_closed_tabs=0; audio_vol=80; remixsid=nonenone
Pragma: no-cache
Cache-Control: no-cache
op=a_login_attempt


HTTP/1.x 200 OK
Server: nginx/0.7.59
Date: Wed, 25 Nov 2009 10:30:11 GMT
Content-Type: text/html; charset=windows-1251
Connection: keep-alive
X-Powered-By: PHP/5.2.6-1+lenny3
Pragma: no-cache
Cache-Control: no-store
Vary: Accept-Encoding
Content-Length: 7
----------------------------------------------------------
http://login.vk.com/?act=login

POST /?act=login HTTP/1.1
Host: login.vk.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.5) Gecko/20091102 MRA 5.4 (build 02647) Firefox/3.5.5 WebMoney Advisor
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://vkontakte.ru/
Cookie: remixlang=0; remixchk=5; remixsid=d0295
Content-Type: application/x-www-form-urlencoded
Content-Length: 62
email=lol%40mail.ru&pass=715&expire=&vk=


HTTP/1.x 200 OK
Server: nginx/0.7.59
Date: Wed, 25 Nov 2009 10:30:11 GMT
Content-Type: text/html; charset=windows-1251
Connection: keep-alive
X-Powered-By: PHP/5.2.6-1+lenny3
Pragma: no-cache
Cache-Control: no-store
P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
Set-Cookie: l=13262199; expires=Sat, 20-Nov-2010 22:45:10 GMT; path=/; domain=login.vk.com
Set-Cookie: p=73bf60d54f67; expires=Sat, 27-Nov-2010 17:03:12 GMT; path=/; domain=login.vk.com
Content-Encoding: gzip
Vary: Accept-Encoding
Content-Length: 339

Последний раз редактировалось Kandi; 25.11.2009 в 15:19..
 
Ответить с цитированием

  #2  
Старый 25.11.2009, 15:24
Аватар для Kandi
Kandi
Познающий
Регистрация: 18.11.2009
Сообщений: 44
Провел на форуме:
134032

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

Цитата:
Сообщение от root_sashok  
Зря ты такое условие используешь. Придумай что-нибудь попроще, может, банальная проблема с кодировкой?

А попробуй с тегом <h1>...
Попробовал с тегом:
Код:
if Pos('<span class="ncc"><a href="/reg0">',StrPage) <> 0 then
Пишет Авторизация прошла успешно, а в Memo кидает код:

Код:
<html>
  <head>
    <meta http-equiv='content-type' content='text/html; charset=windows-1251' />
  </head>
  <body onload="document.getElementById('l').submit();">
    <form id='l' method='post' action='http://vkontakte.ru/login.php'>
      <input type='hidden' name='op' id='op' value='slogin' />
      <input type='hidden' name='redirect' id='redirect' value='1' />
      <input type='hidden' name='expire' id='expire' value='0' />
      <input type='hidden' name='to' id='to' value='' />
      <input type='hidden' name='s' id='s' value='6c012499a0ce8cc7b319f4da3395' />
    </form>
  </body>
</html>
Подскажите что бы он мог означать?
 
Ответить с цитированием

  #3  
Старый 25.11.2009, 15:25
Аватар для root_sashok
root_sashok
Познавший АНТИЧАТ
Регистрация: 04.08.2008
Сообщений: 1,359
Провел на форуме:
8220635

Репутация: 1593


Отправить сообщение для root_sashok с помощью ICQ
По умолчанию

Проверить условие правильности пароля можно по ссылке. К примеру, если авторизация прошла успешно - ссылка должна выглядеть как http://vkontakte.ru/profile.php (или id...).

Если авторизация провалилась, ссылка будет такой: http://login.vk.com/?act=login.
 
Ответить с цитированием

  #4  
Старый 25.11.2009, 15:32
Аватар для Kandi
Kandi
Познающий
Регистрация: 18.11.2009
Сообщений: 44
Провел на форуме:
134032

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

Цитата:
Сообщение от root_sashok  
Проверить условие правильности пароля можно по ссылке. К примеру, если авторизация прошла успешно - ссылка должна выглядеть как http://vkontakte.ru/profile.php (или id...).

Если авторизация провалилась, ссылка будет такой: http://login.vk.com/?act=login.
знать бы еще как это сделать в посте....я только сегодня взялся за него....
моно пример? тупой от руки хотя бы...
 
Ответить с цитированием

  #5  
Старый 25.11.2009, 15:37
Аватар для root_sashok
root_sashok
Познавший АНТИЧАТ
Регистрация: 04.08.2008
Сообщений: 1,359
Провел на форуме:
8220635

Репутация: 1593


Отправить сообщение для root_sashok с помощью ICQ
По умолчанию

Хм, сам POST не знаю... Может, проверить через Referer?

Почитай про HTTP_HOST...

Синтаксиса не знаю, опишу по-русски.

Если HTTP_HOST (он же текущий адрес) http://vkontakte.ru/profile.php или HTTP_HOST = http://vkontakte.ru/id* тогда авторизация успешна, иначе авторизация не удалась.

Последний раз редактировалось root_sashok; 25.11.2009 в 15:44..
 
Ответить с цитированием

  #6  
Старый 25.11.2009, 16:27
Аватар для Пуховой
Пуховой
Banned
Регистрация: 25.11.2007
Сообщений: 62
Провел на форуме:
1702086

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

Kandi, отснифьте запросы мозиллой (TamperData плагин), посмотрите внимательнее, где ошиблись
 
Ответить с цитированием

  #7  
Старый 25.11.2009, 18:01
Аватар для tw1ns
tw1ns
Новичок
Регистрация: 19.06.2009
Сообщений: 10
Провел на форуме:
172149

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

Если ты используешь indy, тогда проще так:

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  param:TStringList;
  p:string;
begin
  param:=TStringList.Create;
   try
    param.Add('act=login');
    param.Add('success_url=');
    param.Add('fail_url=');
    param.Add('try_to_login=1');
    param.Add('to=');
    param.Add('vk=');
    param.Add('email=адрес');
    param.Add('pass=пароль');
    param.Add('expire=');
    p:=IdHTTP1.Post('http://vkontakte.ru/login.php',param);
  finally
    param.Free;
  end;
end;
Проверять можно как и ты:

Код:
 if Pos('<title>В Контакте | Вход</title>',p) <> 0 then
    ShowMessage('Авторизация провалилась')
  else
    ShowMessage('Авторизация прошла успешно');
 
Ответить с цитированием

  #8  
Старый 25.11.2009, 19:35
Аватар для Luck3r
Luck3r
Новичок
Регистрация: 01.11.2009
Сообщений: 21
Провел на форуме:
29290

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

Курить вредно.
Цитата:
http://login.vk.com/?act=login

POST /?act=login HTTP/1.1
Надо с этими кукисами идти на вконтакте.ру, а не vk.com ;-)
 
Ответить с цитированием

  #9  
Старый 25.11.2009, 20:56
Аватар для AquaKlaster
AquaKlaster
Участник форума
Регистрация: 09.03.2009
Сообщений: 178
Провел на форуме:
1605524

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

что бы авторизоватся в вк нужно отправить не 1 пост запрос а целых 3=)
 
Ответить с цитированием

  #10  
Старый 26.11.2009, 00:30
Аватар для Kandi
Kandi
Познающий
Регистрация: 18.11.2009
Сообщений: 44
Провел на форуме:
134032

Репутация: 3
Отправить сообщение для Kandi с помощью ICQ
Unhappy

Цитата:
Сообщение от Пуховой  
Kandi, отснифьте запросы мозиллой (TamperData плагин), посмотрите внимательнее, где ошиблись
Говорю же) я только сегодня взялся за это дело, и очень хочу научиться с этим, т.к. хочется сделать ВКИнвайтер да и знать как работать с пост запросами....а в TWebBrowser в моей теме .... я так понял через него не пригласить никого хотя мб как то и моно....но никто не помог..и вот я решился на Post Запросы, т.к. через них я думаю можно сделать VKinviter...но практикант я начинающий повторюсь))) Про сниф...к статей я ей и пользуюсь(Mazzil'oй) я же скинул все вроде как нужные запросы....ну а толком я и не понял....что куда....читал это:
http://parsing-and-i.blogspot.com/2009_05_01_archive.html

Цитата:
Сообщение от Luck3r  
Курить вредно.

Надо с этими кукисами идти на вконтакте.ру, а не vk.com ;-)
я кукисами? :O
какими именно?)

Цитата:
Сообщение от AquaKlaster  
что бы авторизоватся в вк нужно отправить не 1 пост запрос а целых 3=)
ааам.....что то многова то
это меня уже не очень радует((( а каких 3?


tw1ns

Конечно же инди) спасибо попробую)) только не понял некоторые значения...
Код:
    param.Add('act=login'); // это типо блок Login?
    param.Add('success_url='); // совершенная страница?(та на которую мы переходим? или я туплю?)
    param.Add('fail_url='); // плохая страница? в каком смысле?
    param.Add('try_to_login=1'); // это типо возращает к логину? или нет?
    param.Add('to='); // что за to?
    param.Add('vk='); // что за vk?
    param.Add('email=адрес'); // мейл
    param.Add('pass=пароль'); // пароль
    param.Add('expire='); // что это? непонятно(
    p:=IdHTTP1.Post('http://vkontakte.ru/login.php',param); // собственно страница авторизации?
Ответьте пожалуйста....я вас прошу)
Если кто нить сможет дать пару уроков по авторизации на каких нить простеньких сайтах через ТВ например прошу стукнуть... пять69-62три-91три...заранее спасибо если кто то откликнится...

З.Ы. спасибо всем собственно) я пробовал авторизовываться на LiveJournal.com чуток разобрался и даже получилось) но не до конца понял что к чему...наверное.... а вот ВК, что то себя очень защищает только я не вижу смысла) ко мне 200 друзей в день со спамом лезут...выводит однако) ну, а не было бы такой защиты - 500 лезло) большой разницы не вижу..хотя дают зарабатывать Invitus'y... Помогите бедному студенту...)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Баги приложения "Счастливый фермер" (Продолжение №2) regau Социальные сети 2290 04.09.2009 17:14
Delphi POST Запрос Sin3v С/С++, C#, Delphi, .NET, Asm 15 12.08.2009 11:58
Post запрос... RedBull@12 С/С++, C#, Delphi, .NET, Asm 4 06.12.2006 17:26
Коды состояния HTTP - Коды ошибок http сервера D=P=CH= MOD= *nix 6 15.10.2006 20:47



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


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




ANTICHAT.XYZ