1

本当のFacebookリンクを取得したい. Omniauth Gem での認証後、次のようにリンクしました: https://www.facebook.com/app_scoped_user_id/960601127305294/ しかし、私の実際のプロフィール リンクはhttps://www.facebook.com/kuzevanoffです。

したがって、私のシステムには 2 つの異なるリンクがあります。

どうすれば問題を解決できますか?

ありがとう!

私の Omniauth ハッシュ:

Started GET "/auth/facebook" for 127.0.0.1 at 2015-05-31 13:40:45 +0200
I, [2015-05-31T13:40:45.979688 #56787]  INFO -- omniauth: (facebook) Request phase initiated.

<OmniAuth::AuthHash credentials=#<OmniAuth::AuthHash expires=true expires_at=1438249229 token="CAAXPwjr1V5oBABodmqtUPAGyPhnMBo3v7Q0Jifa8c7ZAYvvxYQiJoAydA1zJdeB6x9Gq8tRJFkEUeZAs003MnEe2mseO09UQwY3uvrS2JpodVqIauqRZAxUFbHBW234BB9s4q31WKpeOmbEzZBfmnP1cpowO3UWTOhfsfqFJObiPsZCKFPlZAjBH3rP6Fl6ldl62jUcLHDSIu7xubWPTvT"> extra=#<OmniAuth::AuthHash raw_info=#<OmniAuth::AuthHash email="boriska-iriska@yandex.ru" first_name="Boris" gender="male" id="960601127305294" last_name="Kuzevanov" link="https://www.facebook.com/app_scoped_user_id/960601127305294/" locale="ru_RU" name="Boris Kuzevanov" timezone=2 updated_time="2015-05-03T21:09:59+0000" verified=true>> info=#<OmniAuth::AuthHash::InfoHash email="boriska-iriska@yandex.ru" first_name="Boris" image="http://graph.facebook.com/960601127305294/picture" last_name="Kuzevanov" name="Boris Kuzevanov" urls=#<OmniAuth::AuthHash Facebook="https://www.facebook.com/app_scoped_user_id/960601127305294/"> verified=true> provider="facebook" uid="960601127305294">
4

1 に答える 1

0

omn​​iauth-facebook gem を使用している場合、Auth Hash は次のようになります。request.env['omniauth.auth']

# Example from omniauth-facebook gem
# https://github.com/mkdynamic/omniauth-facebook#auth-hash
{
  :provider => 'facebook',
  :uid => '1234567',
  :info => {
    :nickname => 'jbloggs',
    :email => 'joe@bloggs.com',
    :name => 'Joe Bloggs',
    :first_name => 'Joe',
    :last_name => 'Bloggs',
    :image => 'http://graph.facebook.com/1234567/picture?type=square',
    :urls => { :Facebook => 'http://www.facebook.com/jbloggs' },
    :location => 'Palo Alto, California',
    :verified => true
  },
  # Removed non-essential part for brevity..
}

プロフィールの URL は、info > urls > Facebook からアクセスできます。また、ルート URL にニックネームを追加するだけで、プロファイル リンクを取得できます。

"http://www.facebook.com/" + omniauth_hash.info.nickname
于 2015-05-31T11:30:18.460 に答える