我使用的是Twitter Gem和Figaro,但我的凭据并未存储。这是我的设置:
配置/初始化/ 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
配置/ 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
非常感谢任何帮助,谢谢
答案 0 :(得分:1)
client = Twitter::REST::Client.new
正在创建一个没有参数的新对象;它没有重复使用config/initializers/twitter.rb
尝试放置初始化代码&amp;控制器中的访问代码如下:
@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")