我正在使用omniauth通过facebook(facebook登录)登录用户。 这发生在会话控制器中。我的后端数据库由parse.com处理,基本上它提供了一个只存储
的authdata字段"id": "user's Facebook id number as a string",
"access_token": "an authorized Facebook access token for the user",
"expiration_date": "token expiration date of the format: yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
一旦存储了所有这些信息,用户就会被导向他的个人资料,我想显示用户的Facebook显示图片,我不知道该怎么做。 我的session_controller看起来像这样
def createfb
auth = request.env["omniauth.auth"]
user = User.authenticate_with_facebook(auth.uid, auth.credentials.token, Time.at(auth.credentials.expires_at))
#check if username and name is nil
if user
session[:user_id] = user.id
if (session[:return_to] && user.name == nil)
redirect_to "/users/#{current_user.id}/edit"
elsif (user.name == nil)
redirect_to "/users/#{current_user.id}/edit"
else
redirect_to games_url, :notice => "Logged in"
end
end
end
如果有人可以帮助我,我真的很感激。 谢谢
PS:我刚刚在一个月前开始使用ruby,所以我还是一个非常新手=)答案 0 :(得分:0)
您可以通过嵌入IMG元素并将其src设置为
来获取用户的个人资料图片http(s)://graph.facebook.com/userid/picture
有关其他选项的更多信息,请参阅文档,“连接”部分 - >图片。 https://developers.facebook.com/docs/reference/api/user/