Авторизация на сайте

09.11.2009
665
1
#1
Как с помощу Delphi можно сделать авторизацию на сайте, можете расказать в общих чертах и доступно(что б можно было применик почти к любому сайту).
В гугле нашол вот это, но почти ниче не понял, зашол на mail.ru нашол в коде что то похожее, но оно почти абсолютно другое.
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#2
Нуу.. Там в статье вам все написали. Я детально не просматривал, но на первый взгляд описан вполне себе самый просто и рабочий метод..
Если сократить то все сводится к тому что
1. Открываешь исходник страницы.
2. Находишь саму форму авторизации
3. Смотришь каким методом передаются параметры(GET или POST, варианта всего 2)
4. Далее смотрятся имена самих полей, куда вводится логин пароль и всех остальных(если есть) включая всякие hidden'ы.
5. Далее там в статье описано как эти параметры передаются серверу..

Добавлено: пс. Для вышенаписанного, безусловно, надо подучить html
 
09.11.2009
665
1
#3
Зашол на страницу аторизации Вконтакте через Оперу, нажал просмотреть исходниый код
заменил
Код:
 <form method="post" name="login" id="login" action="http://login.vk.com/?act=login" onsubmit="if (vklogin) {return true} else {quick_login();return false;}">
<label for="email">E-пошта або Логін:</label>
<input class="inputText" onfocus="show('expirePad');" type="text" name="email" id="email" size="20" />
<label for="pass" style="margin-top: 5px">Пароль:</label>
<input class="inputText" onfocus="show('expirePad');" type="password" name="pass" id="pass" size="20" style="margin-bottom: 2px" />
<div id="expirePad"><input type="hidden" name="expire" id="expire" value="1" /></div>
<input type="hidden" name="vk" id="vk" value="">
на
Код:
 <form method="post" name="login" id="login" action="http://login.vk.com/?act=login" onsubmit="if (vklogin) {return true} else {quick_login();return false;}">
<label for="email">E-пошта або Логін:</label>
<input class="inputText" onfocus="show('expirePad');" type="text" name="email" id="email" size="20" value='почта' />
<label for="pass" style="margin-top: 5px">Пароль:</label>
<input class="inputText" onfocus="show('expirePad');" type="password" name="pass" id="pass" size="20" style="margin-bottom: 2px" value='пароль'/>
<div id="expirePad"><input type="hidden" name="expire" id="expire" value="1" /></div>
<input type="hidden" name="vk" id="vk" value="">
нажал применить изменения, и нужные поля заполнились.
Нажал кнопку войти и вошол.
Вопрос:
Как это можно сделать через TIDHTTP(только заменить код и обновить страницу из этого кода)?

ЗЫ В этом я пустой чайник
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#4
Код:
var params,responseres:tstringlist;
begin
params:=TStringList.Create;
responseres:=TStringList.Create;
try
params.Add('email=почта');
params.Add('pass=пароль');
params.Add('vk=');
params.Add('expire=1');
responseres.Text:=http1.Post('http://login.vk.com/?act=login',params);
if Pos('logout',responseres.Text)>0 then
ShowMessage('Авторизовались!');
finally
params.free;
responseres.free;
Как-нибудь так
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#6
Куки включил?
зы.
Найди еще что такое vklogin и Quicklogin().
ЗЗЫ.
У контакта есть специальное API для работы с ним. МБ проще его использовать?