【问题标题】:Twitter Rails gem "Unable to verify your credentials", Initializer not workingTwitter Rails gem“无法验证您的凭据”,初始化程序不起作用
【发布时间】:2015-06-02 04:05:35
【问题描述】:

我正在使用Twitter GemFigaro,但我的凭据没有被存储。这是我的设置:

config/initializers/twitter.rb

client = Twitter::REST::Client.new do |config|
  config.consumer_key        = ENV["TWITTER_CONSUMER_KEY"]
  config.consumer_secret     = ENV["TWITTER_CONSUMER_SECRET"]
  config.access_token        = ENV["TWITTER_ACCESS_TOKEN"]
  config.access_token_secret = ENV["TWITTER_ACCESS_SECRET"]
end

config/application.yml:

TWITTER_CONSUMER_KEY: "12345"
TWITTER_CONSUMER_SECRET: "12345"
TWITTER_ACCESS_TOKEN: "12345"
TWITTER_ACCESS_SECRET: "12345"

将以下内容放在视图中会导致“无法验证您的凭据”错误,我认为这是由初始化程序未正确存储我的凭据引起的。

<%=
@client =  Twitter::REST::Client.new
@client.user_timeline("cnn") %>

我尝试将各种项目放入控制器中,但没有任何效果。通过控制台:

client =  Twitter::REST::Client.new
=> #<Twitter::REST::Client:0x007fadf06364b0>
client.consumer_key
 => nil

任何帮助将不胜感激,谢谢

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 twitter initialization figaro-ruby


    【解决方案1】:

    client = Twitter::REST::Client.new 正在创建一个没有参数的新对象;它没有重用在config/initializers/twitter.rb中配置的内容

    尝试将初始化代码和访问代码放在控制器中,如下所示:

    @client = Twitter::REST::Client.new do |config|
      config.consumer_key        = ENV["TWITTER_CONSUMER_KEY"]
      config.consumer_secret     = ENV["TWITTER_CONSUMER_SECRET"]
      config.access_token        = ENV["TWITTER_ACCESS_TOKEN"]
      config.access_token_secret = ENV["TWITTER_ACCESS_SECRET"]
    end
    
    @client.user_timeline("cnn")
    

    【讨论】:

      猜你喜欢
      • 2015-10-11
      • 1970-01-01
      • 2016-10-15
      • 2014-04-14
      • 1970-01-01
      • 2021-03-08
      • 1970-01-01
      • 2017-04-30
      • 2018-07-16
      相关资源
      最近更新 更多