使用Linkedin gem時出現了一個尷尬的問題。Production Linkedin Oauth
我的應用程序嘗試使用oauth獲取用戶數據。在開發環境中,它工作得很好。但只要我把它上傳到Heroku的它開始給我像錯誤:
2014-07-17T04:25:07.552779+00:00 app[web.1]: NoMethodError (undefined method `picture_urls' for #<LinkedIn::Client:0x007f4f4cea65f8>):
2014-07-17T04:25:07.552783+00:00 app[web.1]: app/models/social_auth.rb:7:in `fetch_details'
真正的問題在於,它用來工作和無處停止。我甚至對我的git倉庫進行了回滾,以查看過去的代碼是否正在運行,但沒有運行。
它似乎甚至沒有正確回答我,甚至給出了正確的回調(我確定錯誤發生在oauth驗證後)。
檢查定義的完整代碼(即模型保存後執行):
def fetch_details_from_linkedin
client = LinkedIn::Client.new(ENV["LINKEDIN_KEY"], ENV["LINKEDIN_SECRET"])
authkeys = [self.token, self.secret]
client.authorize_from_access(authkeys)
@linkedin = LinkedinUserData.where(user: self.user).first_or_initialize
@linkedin.avatar_url = client.picture_urls.all.first
@linkedin.profile_url = client.profile.site_standard_profile_request.url
@linkedin.save
end
每個項目在這種模式有用來驗證用「authorize_from_access」的方法,用戶令牌和祕密。我不知道爲什麼,但似乎這個回調正在回答我一個空洞的對象。
我已經考慮過的事情: API上的實時狀態 - CHecked。無論LinkedIn api上的應用程序狀態如何,它都會給出錯誤
回調URL:已經檢查過,即使使用https。正如我所說,回調正在執行。該錯誤是一個內部錯誤(500)。