Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 5 949

/ вопрос открыт /

Приветствую, уважаемые эксперты!

Немного данных:
- студия: Rad Studio XE2
- компоненты: ICS for Delphi XE2
- ОС: Windows 7

Я тут пишу прогу для facebook и на первых шагах уже проблемы. Не работает авторизация. Facebook просит кукисы, хотя на форме есть dCookieManager, прикрепленный к dHTTP и AllowCookies поставлено в TRUE. Я уже заколебался рыскать по форумам. Может у кого такая проблема была?

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

Приложение:
  1. procedure TForm_MainForm.sButton_LoginClick(Sender: TObject);
  2. var
  3. LoginInfo: TStrings;
  4. LoginString: string;
  5. ResponseStream: TStringStream;
  6. ResponseStr: string;
  7. begin
  8. ResponseStream := TStringStream.Create('');
  9. ResponseStream.Clear;
  10.  
  11. if S_Login <> '' then
  12.  
  13. if S_Pass <> '' then
  14. try
  15. { LoginInfo.Add('post_form_id=c7891524de1454ab653d46687d5da72d');
  16. LoginInfo.Add('lsd=JDO8v');
  17. LoginInfo.Add('locale=ru_RU');
  18.  
  19. LoginInfo.Add('email=' + S_Login);
  20. LoginInfo.Add('pass=' + S_Pass); }
  21. dHTTPRequest1.FormFields['email'].FieldValue := S_Login;
  22. dHTTPRequest1.FormFields['pass'].FieldValue := S_Pass;
  23. LoginString :=
  24.  
  25. + S_Login + '&pass=' + S_Pass;
  26. dHTTP1.AllowCookies := True;
  27. dHTTP1.Request := dHTTPRequest1;
  28. dHTTP1.Post('http://www.facebook.com/login.php', ResponseStream);
  29. ResponseStream.SaveToFile('c:\1.html');
  30. ResponseStream.Clear;
  31. // dHTTP1.Request:=dHTTPRequest2;
  32. // dHTTPRequest2.FormFields['feedback_params'].FieldValue:='"target_fbid":"225209567557656"';
  33. dHTTP1.Post('http://www.facebook.com/ajax/ufi/modify.php?__a=1',
  34. ResponseStream);
  35. { --DEBUG-- } // ShowMessage(ResponseStream.DataString);
  36. ResponseStream.SaveToFile('c:\2.html');
  37. finally
  38.  
  39. end
  40. else
  41. Exit;
  42. LoginInfo.Free;
  43. ResponseStream.Free;
  44. end;


BigNik Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: BigNik (статус: 1-ый класс)
Вопрос отправлен: 13 февраля 2012, 13:34
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 3; последнее сообщение — 13 февраля 2012, 13:50; участников в обсуждении: 2.
Вадим К

Вадим К (статус: Академик), 13 февраля 2012, 13:40 [#1]:

В свое время я мучился с этой же проблемой. Не хотел idHttp работать корректно с кукисами. В конце концов, я решил это следующим образом - после выполнения запроса я сохранял кукисы в свою переменную, парсил, чуточку модифицировал (в моем случае оказалось, что компонент ещё и портит немного кукисы), а при следующем запросе подставлял кукисы.
Галочка "подтверждения прочтения" - вселенское зло.
BigNik

BigNik (статус: 1-ый класс), 13 февраля 2012, 13:46 [#2]:

Спасибо большое за быстрый ответ! Мудохаться с кукисами мне чего-то не хочется но похоже что придется. Париться еще будет над чем. Хуже всего это то, что вчера 2 раза оно работало! Я уже обрадовался и тут на тебе - не работает опять...
BigNik

BigNik (статус: 1-ый класс), 13 февраля 2012, 13:50 [#3]:

А у вас, кстати, еще тот код не сохранился? Он бы очень помог.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:27
Выполнено за 0.02 сек.