2013-03-28 2 views
1

Я использую Devise и Omniauth и следую за railscast (http://railscasts.com/episodes/235-devise-and-omniauth-revised). Он имеет дело только с: uid,: provider. Ничто не включает в себя Token (From Oauth2)? (https://github.com/intridea/omniauth/wiki/Auth-Hash-Schema)Что делать с токеном доступа (от Auth Hash) в Omniauth?

Итак, проблема в том, что делать с токеном доступа? Например, я использую omniauth-qq (https://github.com/beenhero/omniauth-qq). И вы можете видеть, что в Auth Hash есть [: credentials] [: токен]

Кстати, я использую только omniauth для входа в систему.

UPDATE: Я имею в виду, что я не знаю, что делать с токеном в рельсах. например, хранить его в сеансе или что-то еще? Вот мой код, и я вообще не занимаюсь токе. Есть ли какой-нибудь пример, который можно увидеть, как использовать токен?

def self.from_omniauth(auth) 
     where(auth.slice(:provider, :uid)).first_or_create do |user| 
     user.provider = auth.provider 
     user.uid = auth.uid 
     user.name = auth.info.nickname 
     user.image = auth.info.image 
     end 
    end 

ответ

0

в зависимости от того, что вы хотите сделать ... например, если вы используете ominiauth-твиттер или фейсбук, тем маркер полезен для аутентификации urself, и вы можете использовать маркер, чтобы получить дополнительную информацию, такую ​​как изображение, ник и многое другое.

+0

Возможно, у меня нет моей идеи. Я просто не знаю, как использовать токен доступа в моем коде, например, хранить его в сеансе и обновлять иногда позже. Посмотрите мое ОБНОВЛЕНИЕ. – cqcn1991

+0

, вероятно, вы можете просто хранить в своем файле cookie или в базе данных, я думаю (из-за безопасности cz, если хакер получит его, он может использовать токен для информации caputre) .. но вам нужен метод для обработки токена доступа, поскольку он может истек, для facebook, по умолчанию - 2 часа, но не уверен, что текущая документация изменена. – Nich

+0

Есть ли какой-нибудь пример? Я не совсем уверен, как с этим справиться ... спасибо! – cqcn1991

1

Я следил за тем же скринкастом, и он отлично работает без каких-либо действий на токене.

Если вы используете его только для входа в систему, вам не нужно ничего с ним делать.

Вам понадобится токен, чтобы выполнять дополнительные действия, такие как выполнение запросов в списках друзей и т. Д.

+0

Так что, даже если токен истек, ничего не беспокоило бы? – cqcn1991

Смежные вопросы