提问者:小点点

Twitter::Error::F禁止-无法验证您的凭据-Twitter宝石在Rails


我正在使用Twitter gem尝试在我的网页上发布来自帐户的推文列表,但是我一直收到“无法验证您的凭据”错误。

我甚至把|config|块放在控制器中,试图缩小正在发生的事情,但是没有甜甜圈!

Twitter密钥是正确的。我刚刚创建了一个应用程序并将它们直接复制/粘贴到config/application. yml文件中。然后当它不起作用时,我创建了一个新应用程序并重试。

配置/应用程序. rb

require File.expand_path('../boot', __FILE__)
require 'yaml'
require 'rails/all'

config = YAML.load(File.read(File.expand_path('../application.yml', __FILE__)))

配置/应用程序。毫升

TWITTER_CONSUMER_KEY: '123456789'
TWITTER_CONSUMER_SECRET: '123456789'
TWITTER_ACCESS_TOKEN: '123456789'
TWITTER_ACCESS_SECRET: '123456789'

app/控制器/页面. html.er b

class PagesController < ApplicationController

  def index

  @twitter = 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

    @twitter.user_timeline("gem")

  end

  def help
  end
end

错误页面:

Twitter::Error::Forbidden in PagesController#index
Unable to verify your credentials

Extracted source (around line #12):            
  end

    @twitter.user_timeline("gem")

  end

我肯定我搞砸了一些简单的事情。不过,我真的不知道我做错了什么。

提前感谢!


共1个答案

匿名用户

@H-Dog请澄清。在使用application. yml时,您是否使用config=YAML.load(File.read(File.expand_path('…/application.yml',__FILE__)))从application.rb配置它?并且您确定不想执行twitter-auth以获取要发推文的帐户的必要凭据(access_token和access_secret)吗?