这对于linkedin gem来说意味着什么? nil的未定义方法`downcase':NilClass

时间:2011-04-26 13:43:59

标签: ruby-on-rails oauth linkedin omniauth

我现在收到以下错误(没有真正改变代码,但是开始发生):

undefined method `downcase' for nil:NilClass

在使用OmniAuth进行身份验证后获取/存储访问令牌/秘密

  7   def show 
  8     @user = User.find(params[:id]) 
  9     @client = LinkedIn::Client.new(ENV["LINKEDIN_KEY"], ENV["LINKEDIN_SECRET"]) 
 10     @client.authorize_from_access(@user.atoken, @user.asecret) 
 11     if @user == current_user 
 12       @client.profile 
 13     else 
 14       @client.profile(:id => @user.uid) 
 15     end 
 16   end 

让我疯狂地试图找到问题。

1 个答案:

答案 0 :(得分:1)

如果您粘贴完整的堆栈跟踪,我可以提供更好的解决方案,但基本上,您传递给其中一个方法的参数之一是nil。

最有可能出现在这两行中的一行

@client = LinkedIn::Client.new(ENV["LINKEDIN_KEY"], ENV["LINKEDIN_SECRET"]) 
@client.authorize_from_access(@user.atoken, @user.asecret) 

如果它“刚刚”开始发生,没有代码更改,我敢打赌我的2美分其中一个ENV属性返回nil