4

私のアプリでは、次のコードでツイートするユーザーを提供しています。

       if twitter = current_user.authentications.find_by_provider("twitter")
        Twitter.configure do |tw|
          tw.consumer_key = "6jaqMt7kE9iVxh8hX0mmtQ"
          tw.consumer_secret = "5ZIydxRBFfEJxc2EzedahIxoeO8g1hZCQVqZFtWWNM"
          tw.oauth_token = twitter.token
          tw.oauth_token_secret = twitter.token_secret
        end
        Twitter.update(params[:tweet])

それは私のローカルホストでうまく機能します。ただし、アプリをherokuにデプロイし、ツイートを送信しようとしていますが、herokuログには次のように表示されます。

2012-11-15T01:30:32+00:00 app[web.1]: Completed 500 Internal Server Error in 494ms
2012-11-15T01:30:32+00:00 app[web.1]: 
2012-11-15T01:30:32+00:00 app[web.1]: Twitter::Error::BadRequest (Bad Authentication data):
2012-11-15T01:30:32+00:00 app[web.1]: 
2012-11-15T01:30:32+00:00 app[web.1]: 
2012-11-15T01:30:32+00:00 app[web.1]:   app/controllers/posts_controller.rb:12:in `create'

この問題を解決するにはどうすればよいですか?

ありがとう。

4

2 に答える 2

0

2つのこと:

  1. 登録済みのTwitterアプリケーションの設定で、コールバックURLを本番サーバーの場所に更新します。

  2. herokuapp.comのサブドメインを使用している場合は、何を推測しますか。Twitterへの他の数十億のAPIリクエストのプールにいます。Apigeeを介してAPIリクエストをプロキシします

  3. 初期化してから、コンソールを介してHeroku上のデータベースを移行します。

    heroku run rake db:setup

    heroku run rake db:migrate

(通常は、db:migrateが機能するだけですが、この場合は両方を実行する必要がありました)

Twitter開発者の議論から供給

于 2013-02-03T13:25:40.750 に答える
-1

Twitter認証を理解し、自分の経験を使ってチュートリアルを作成しました:http ://www.orhancanceylan.com/rails-twitter-and-facebook-authentications-with-omniauth-and-devise/

于 2012-11-21T01:40:15.147 に答える