|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Авторизация вконтакте
всем доброго времени суток, есть проблема после авторизации вконтакте - получаю ошибку iohandler value is not valid
в чем проблема? сама авторизация проста: Цитата:
Мне нужно получить код страницы меил.пхп после авторизации (без разницы, мобильной или обычной) Последний раз редактировалось sardox, 14.04.2012 в 17:19. |
#2
|
|||
|
|||
что уже пробовал - добавлял IdSSLIOHandlerSocketOpenSSL1, при выполнении стал ругаться на отсутствие библиотек, добавил libeay32 и ssleay32 в корень с ехе, но все равно ругается на библотеки. Что за ошибка иохандлер еррор? В правильном ли я направлению иду?
Спасибо) |
#3
|
|||
|
|||
Версии библиотек не верные
А вообще.. через синапс лучше.. он быстрее работает .... чем ИНДИ Вот пример идеально работающий насинапсе Код:
HTTP:=THTTPSend.Create; HTTP.MimeType:='application/x-www-form-urlencoded'; HTTP.Headers.Clear; HTTP.Cookies.Clear; HTTP.Document.Clear; Answer:=TStringStream.Create(''); POSTDATA:=TStringStream.Create(''); POSTDATA.WriteString('act=login'); POSTDATA.WriteString('&q=1'); POSTDATA.WriteString('&al_frame=1'); POSTDATA.WriteString('&expire='); POSTDATA.WriteString('&captcha_sid='); POSTDATA.WriteString('&captcha_key='); POSTDATA.WriteString('&from_host=vk.com'); POSTDATA.WriteString('&from_protocol=http'); POSTDATA.WriteString('&ip_h='); POSTDATA.WriteString('&email='+login); POSTDATA.WriteString('&pass='+pass); HTTP.Document.LoadFromStream(POSTDATA); HTTP.HTTPMethod('POST','https://login.vk.com/?act=login'); if Pos('hash=',HTTP.Headers.Text) <> 0 then begin ShowMEssage ('Auth True!'); end; |
Этот пользователь сказал Спасибо ApxaHGe1 за это полезное сообщение: | ||
OTVET (17.01.2013)
|
#4
|
|||
|
|||
А можно исходник на синапсе полностью рабочий?
|
#5
|
|||
|
|||
подскажите, может кто делал
как мне получить содержимое группы вконтакте по ее адресу ну например http://vk.com/con.amore предполагается, что пользователь приложения состоит в группе я не пойму какой метод использовать. здесь есть описания методов http://vk.com/page-1_2369282 но ими я не пойму как работать, да и нет там вроде такого верней есть метод получения записей со стены по ид пользователя а мне надо по имени группы авторизацию я делаю с помощью контактовского API а дальше пока у меня ума не хватает |
#6
|
||||
|
||||
Покажи как авторизацию делал, помогу с API разобраться
Програмистами не рождаются, ими становятся! |
#7
|
|||
|
|||
Да авторизация средствами браузера, то есть в одну строчку
procedure TForm2.FormCreate(Sender: TObject); begin WebBrowser1.Navigate('http://vk.com/login.php?app=1905253&layout=popup&type=browser'); end; end. в форме открывается окно ввода логина-пароля и все. дальше можно делать свои дела. лучше конечно сделать чтобы выскакивало новое окно, и потом закрывалось после авторизации, по типу как это сделано у Агента вконтакте, но я не понял как это сделать. моя задача заклчается в том, чтобы отслеживать записи на стене группы, и если появилась новая запись, то выдавать алерт и возможно текст записи. вот и все что требуется от программы. то есть мне надо в мемо наверное передать html, найти строку "Записей" и перед ней проверять число, если оно меняется, то сооветственно выдавать алерт. Возможно это можно проще сделать через API, я смотрел метод wall.get – возвращает список записей со стены. но так и не понял пока можно ли через него свою задачу решить или нет. здесь http://www.delphiexpert.ru/view_lesson.php?id=98 есть уже готовый пример работы вобщем-то, там и Secret и sig получается для использования потом в методах Последний раз редактировалось harbor, 15.12.2012 в 22:06. |
Этот пользователь сказал Спасибо SCrat.ORS за это полезное сообщение: | ||
harbor (15.12.2012)
|
#9
|
||||
|
||||
Запрос на апи будет такой:
Код:
api_id=633984 method=wall.get sig=* sid=** owner_id=-№ГРУППЫ offset=0 count=1000 filter=all Все строчки запроса, кроме sig и sid, нужно отсортировать по алфавиту, затем делаем MD5 Код:
sig = md5(viewer_idname1=value1name2=value2secret) secret = Секретный ключ приложения = C4iUv105ci Т.е. я использую приложение уличные гонки app633984 и его секретный ключик, т.к. я его знаю = C4iUv105ci Вообще можно от любого приложения узнать ключик. ** - вот это куки,.. токен не подойдет вроде. как то так Програмистами не рождаются, ими становятся! |
Этот пользователь сказал Спасибо SCrat.ORS за это полезное сообщение: | ||
OTVET (17.01.2013)
|
#10
|
|||
|
|||
ну про метода я вроде понял
вроде кое что начало прояснятся метод wall.get "В случае успеха возвращает общее количество сообщений" то есть число записей на стене я так полагаю, то что мне и нужно и и массив объектов, каждый из которых содержит поля: .. date - время публикации записи в формате unixtime text - текст записи .. а вот как обрабатывать массив, не совсем понятно. Кстати, а создать свое приложение теперь нельзя чтоли? я что-то нигде не нашел как это сделать чтобы прога на него ссылалась. |
#11
|
|||
|
|||
Цитата:
кстати, а в твоем примере авторизация работает нормально? а то моя дельфя вроде откомпилила, ввожу свои данные, жму поехали и вылазит какая-то программная ошибка |
#12
|
|||
|
|||
и вот это в методе я не понял, задается
owner_id идентификатор пользователя (по умолчанию - текущий пользователь). Чтобы получить записи со стены группы (публичной страницы, встречи), укажите её идентификатор со знаком "минус": например, owner_id=-1 соответствует группе с идентификатором 1. я вобще не знаю какой индетификатор должен быть, он ведь у каждого пользователя свой будет наверное |
#13
|
||||
|
||||
в данном случае owner_id = -28646177
28646177 - это номер интересующей тебя группы http://vk.com/con.amore обрати внимание на знак минус. т.е. Код:
api_id=633984 method=wall.get sig=* sid=** owner_id=-28646177 offset=0 count=1000 filter=all что касается авторизации, в моём примере она уже не работает. Поэтому и дает ошибку. Я не зря спрашивал про авторизацию. Ты получаешь токен, и я не уверен что он подойдет в качестве sid, т.к. sid приходит в Cookies. Про массив обьекта, по умолчанию ты получишь xml текст с кучей запрошенной информации - это и есть массив, а дальше XMLDocument со вкладки internet кидаешь на форму и грузишь полученный xml в него, и вытаскиваешь всю интересующую тебя инфу. Про приложение... - создать можно,.. но нахрен оно надо без надобности. ссылку где создавать приложеньки не помню. Програмистами не рождаются, ими становятся! Последний раз редактировалось SCrat.ORS, 16.12.2012 в 13:41. |
Этот пользователь сказал Спасибо SCrat.ORS за это полезное сообщение: | ||
OTVET (17.01.2013)
|
#14
|
|||
|
|||
а как ты узнал id группы если не секрет
|
#15
|
||||
|
||||
Лови подарок.
рабочий пример как узнал. - зашёл в группу и посмотрел ссылку подписавшихся - http://vk.com/search?c[section]=people&basic=1&c[group]=28646177 Програмистами не рождаются, ими становятся! |