Сегодня решил навести небольшой порядок среди модулей, касающихся работы с Google API. И доработал модуль ClientLogin до нормального компонента. Так что теперь тем, кто не любит использовать отдельные модули и привык к работе с компонентами, будет чуь-чуть удобнее работать.
Основное назначение компонента то же - залогинится у Google и вернуть приложению параметр Auth, который используется в дальнейшем для работы с различными сервисами Google.
В целом, компонент практически ничем не отличается от модуля. За исключением наличия двух событий.
type TAfterLogin = procedure (const LoginResult: TLoginResult; LoginStr:string)of object; TDisconnect = procedure (const ResultStr:string)of object; type TGoogleLogin = class(TComponent) private [...] published property OnAfterLogin :TAfterLogin read FAfterLogin write FAfterLogin; property OnDisconnect: TDisconnect read FDisconnect write FDisconnect;
Как понятно из названий, первое событие возникает после того как получен ответ от Google об успешности логина, а второе, наоборот - после того, как связь с сервером будет разорвана.
Компонент использует в работе WinInet, поэтому не требует установки, скачивания и настройки каких-либо сторонних библиотек и компонентов.
Пример работы компонента
Создаем новое приложение и располагаем на главной форме: 2 Edit, 2 Button и 3 Label и TGoogleLogin как показано на рисунке:

Теперь можно настроить необходимые свойства компонента в Object Inspector'е, либо написать такой обработчик onClick кнопки "Connect":
procedure TForm11.Button1Click(Sender: TObject); begin GoogleLogin1.Email:=Edit1.Text; GoogleLogin1.Password:=Edit2.Text; GoogleLogin1.Login(); end;
В обработчике OnAfterLogin компонента GoogleLogin1 пишем всего одну строку:
procedure TForm11.GoogleLogin1AfterLogin(const LoginResult: TLoginResult; LoginStr: string); begin label3.Caption:=LoginStr end;
Запускаем приложение и любуемся результатом:

После того как Login произведен, в свойстве Auth будет содержаться подстрока, которую и следует использовать при дальнейшей работе с любыми API Google, в том числе и с API Инструментов для веб-мастеров - удобная штукя для того, чтобы раскрутка сайта проходила более комфортно и эффективно.
В архиве Вы найдете сам компонент и рассмотренное в посте тестовое приложение. Пользуйтесь на здоровье.
Компонент TGoogleLogin(35.45 KB)
| Делись! | Загружай! | Плюсуй! |
| | |









20 Мар 2010 в 8:44 пп
Спасибо!!! Ждем, ждем, ждем продолжения……
21 Мар 2010 в 12:19 пп
Поставь на сайте уникальность имен :)))
21 Мар 2010 в 1:34 пп
Поменяй в исходниках
Closeconect (пишется с думя n :)) на Disconnect
21 Мар 2010 в 6:58 пп
Зачем?
21 Мар 2010 в 9:07 пп
Тёзки, привет! :D
21 Мар 2010 в 11:43 пп
Здравствуй, deBose :) Смотрю, Алексеев в блоге прям не пересчитать
22 Мар 2010 в 9:02 дп
Отличная серия постов про работе с сервисами google! Спасибо!
22 Мар 2010 в 10:24 дп
А там ошибка идет, пример скачал что ты выложил
22 Мар 2010 в 6:51 пп
Ну это ещё не все. Скоро постараюсь продолжить
07 Апр 2010 в 12:10 дп
sposiba ;)