Обработка сеанса в OAuth

Я пишу приложение, которое будет подключаться к нескольким почтовым серверам с использованием OAuth. В рамках первоначального установления соединения пользователю будет предложено предоставить доступ к приложению. После предоставления доступа он будет перенаправлен на URL-адрес, указанный при регистрации приложения в OAuth API.

Теперь я хочу определить, для какого пользователя принадлежит токен доступа и токен обновления после того, как URL-адрес перенаправления приходит в мое приложение. Я хочу рассматривать все запросы, происходящие в одном пользовательском сеансе, как уникальные. Кто-нибудь может мне помочь.


person Rajeev    schedule 10.02.2014    source источник


Ответы (1)


Я не уверен на 100%, что ответил на ваш вопрос, но насколько я понимаю, вы хотите определить некоторую информацию о пользователе, который только что вошел в ваш клиент API. Вы можете получить адреса электронной почты, запросив область действия https://www.googleapis.com/auth/userinfo.email и выполнив запрос GET oauth2/userinfo:

gapi.client.oauth2.userinfo.get().execute(function(resp,raw)...

В зависимости от того, к каким областям у вас есть доступ, вы также получите отображаемое имя и некоторую другую информацию. Лучше всего просто console.log(resp) выбрать то, что вы хотите использовать.

person citizenslave    schedule 11.02.2014
comment
прочитав еще немного документации, я пришел к тому же решению. Как только запрос возвращается, я получаю идентификатор электронной почты и некоторый уникальный идентификатор, который назначается пользователю приложением (это взято из сеанса) и использую их оба для дальнейшей обработки и хранения в БД. - person Rajeev; 12.02.2014