1

在開始之前,我應該說我已經閱讀並嘗試了許多建議的解決方案來解決我的問題,但他們中的任何一個都沒有解決問題,所以我會再次詢問並且非常具體。爲什麼我無法通過考拉API訪問Facebook朋友位置?

我正在使用omniauth 1.1.4 omniauth-facebook 1.4.0與koala 1.7.0rc1與圖形API進行交互,將Facebook登錄集成到rails 4應用程序中。我正在按照this railcast中的方式進行操作。

我的問題是,當我通過考拉要求用戶的Facebook朋友喜歡這樣

@current_friends = graph.get_connections('me', 'friends?fields=location,name,id') 

返回的朋友哈希不含location場。我試圖更新我的coffeescript登錄電話,如:

$('#fb_login').click (e) -> 
    e.preventDefault() 
    FB.login ((response) -> 
    window.location = '/auth/facebook/callback' if response.authResponse), scope: "friends_location" 

但這並沒有做任何事情。然後我試圖與CoffeeScript的修改和無,傳遞範圍參數在我的Facebook omniauth初始化:

provider :facebook, ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_APP_SECRET'], :scope => 'friends_location' 

沒有區別。我嘗試徹底刪除咖啡標記並允許完全重定向;我嘗試在服務器和客戶端之間的應用的Facebook控制檯上切換身份驗證令牌參數字段;我基本上嘗試了這些東西的所有組合,但仍然沒有。最後,我要注意的是,當我打電話時

graph.get_connections('me', 'permissions') 

返回的權限列表有friends_location=1。那麼發生了什麼?

+0

有我的答案一直有用嗎? –

回答

0

您應該添加到範圍read_friendlists權限:

provider :facebook, ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_APP_SECRET'], :scope => 'read_friendlists, friends_location' 
相關問題