PDA

Просмотр полной версии : Загрузка фото Вконтакте


IgrikX
07.05.2010, 21:13
К в Builder C++ или Delphy загрузить аватарку в профиль.
Есть у кого кусок кода или какие компонеты использовать?

HakaR
07.05.2010, 21:57
К в Builder C++ или Delphy загрузить аватарку в профиль.
Есть у кого кусок кода или какие компонеты использовать?
TIdHTTP. Сниффер. :D

RedFern.89
07.05.2010, 21:59
вот как в Delphy я хз, а в Delphi могу подсказать)))) :D

IgrikX
07.05.2010, 21:59
Ну я снифером снифал, не понимаю как с компа её взять??

HakaR
07.05.2010, 22:01
Ну я снифером снифал, не понимаю как с компа её взять??
tidmultipartformdatastream (AddFile) наверн... :)
Типо так:
data := Tidmultipartformdatastream.Create;
data.AddFile('file', 'filename.gif', 'image/gif');

AquaKlaster
07.05.2010, 22:01
IdHTTP+IdMultiPartFormData(для отправки формы) в руки.

IgrikX
07.05.2010, 22:36
а как это к post запросу прикрутить

try{
post_data_8->Add("server=9749&hash="+foto_hash+"&photo=2ae214cx%3A001&mid="+foto_mid+"&message_code=2");
otv = IdHTTP1->Post("http://vkontakte.ru/profileEdit.php?page=done_photo",post_data_8);
}catch(...){}

RedFern.89
08.05.2010, 01:27
все просто))

data := Tidmultipartformdatastream.Create;
data.AddFile('file', 'filename.gif', 'image/gif');
idHTTP.post('http://vkontakte.ru/upload.php', data);


снифером уточни запросы)) там хэши всякие и тд))

090808
12.05.2010, 02:06
все просто))

data := Tidmultipartformdatastream.Create;
data.AddFile('file', 'filename.gif', 'image/gif');
idHTTP.post('http://vkontakte.ru/upload.php', data);

снифером уточни запросы)) там хэши всякие и тд))

idCookieManager1.AddCookie('remixsid=***;path=/;','vkontakte.ru');
data := Tidmultipartformdatastream.Create;
data.AddFile('file', '1.jpg', 'image/jpeg');
s:=idHTTP1.post('http://cs9622.vkontakte.ru/upload.php?act=profile&mid=***&hash=f524524a22e6641c4c2d0023dab6f86c&rhash=d666c2002802138cc371369ef236b306&vk=', data);

В ответ отдаёт "Фотография слишком велика" хоть и фото весит 200кб. Хеши верны. В чём проблемс :) ?



Разобрался сам :)

idCookieManager1.AddCookie('remixsid=*1ec1df087a2f a2857eab587;path=/;','vkontakte.ru');
data := Tidmultipartformdatastream.Create;
data.AddFile('file', '1.jpg', 'image/jpeg');
idHTTP1.post('http://cs4527.vkontakte.ru/upload.php?act=profile&mid=*****&hash=7980373c21aa30ea94652874de915468&rhash=724b6e429304a7975fa3f173156d266c&vk=', data);
s:=idhttp1.Get('http://vkontakte.ru/profileEdit.php?page=done_photo&mid=******&server=4527&photo=b36d849x:001&crop=0,0,173&hash=0c1d92acb01617d8528ea65e96e38768&message_code=2&callback=1');

RedFern.89
12.05.2010, 09:04
090808, а ты адрес cs4527.vkontakte.ru парсишь с upload.php?

090808
13.05.2010, 03:19
090808, а ты адрес cs4527.vkontakte.ru парсишь с upload.php?

serv:=Pars('<form method="post" action="http://cs',profile,'.vkontakte.ru/upload.php'); :)