Прохожу авторизацию через мобильную версию ВК. То есть m.vkontakte.ru. С кодом разобрался, прошел, все замечательно, могу гулять по страницам. НО! Теперь нужно перейти например на страницу vkontakte.ru/mail.php?. Браузер подсовывает куки, которые получил с мобильной версии. Как мне программно подсунуть куки, при переходе на страницу не принадлежащую мобильной версии?
ну добавь их http.request.customheaders.add('Cookie: remixsid=234edfgdfg32r234wedfgegh'); о они будут юзатся на ВСЕХ сайтах
А где можно почитать про работу с CookieManager(Indy)? Я уже сделал, как ты мне посоветовал, работает. Но хотелось бы поэлегантнее сделать. Что-то вроде скопировать куки хоста m.vkontakte.ru для хоста vkontakte.ru? P.S. Возможно я сморозил бред, так как сам пока еще ламер.
_http://parsing-and-i.blogspot.com/2009/05/idhttppost.html Обрати внимание на этот код: Code: 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:='livejournal.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://www.livejournal.com/'; Data.Add('mode=login'); Data.Add('user=' + Edit1.Text); Data.Add('password=' + Edit2.Text); StrPage := Http.Post('http://www.livejournal.com/login.bml?ret=1', Data); finally Data.Free; CM.Free; Http.Free; end; if Pos('<input class="logoutlj_hidden" id="user" name="user" type="hidden" value="'+Edit1.Text,StrPage) <> 0 then ShowMessage('Авторизация прошла успешно') else ShowMessage('Авторизация провалилась'); Memo1.Lines.Text := StrPage; end; Также загляни сюда: _http://parsing-and-i.blogspot.com/2009/05/idhttp-delphi.html