我的 rails 应用程序需要两次使用 Twitter Oauth 来实现两个不同的目的。第一个是典型的用户登录。第二个是添加帐户,以便可以提前安排推文。以 Hootsuite 为例。您可以使用 Facebook 登录以及连接各种 Facebook 帐户。这需要两个单独的回调。
为了使用独特的功能进行回调,我想我可以制作两个不同的应用程序,每个应用程序都有一个单独的回调 URL。
但是,在omniauth.rb 文件中,只有一种方法可以连接到twitter 提供者。
Rails.application.middleware.use OmniAuth::Builder do
provider :twitter, ENV["TWITTER_KEY"], ENV["TWITTER_SECRET"]
end
像这样重复是行不通的:
Rails.application.middleware.use OmniAuth::Builder do
provider :twitter, ENV["TWITTER_KEY"], ENV["TWITTER_SECRET"]
end
Rails.application.middleware.use OmniAuth::Builder do
provider :twitter, ENV["TWITTERUSER_KEY"], ENV["TWITTERUSER_SECRET"]
end
因为没有办法区分使用哪个回调。例如,我还没有找到一种方法来制作提供者“:twitter2”,因为它内置于 Omniauth 中。
有没有人找到在同一个应用程序中使用多个 Twitter 回调的解决方案?很高兴看到需要为不同目的使用两次的任何 Oauth 的解决方案,例如 Facebook 或 Google Plus
谢谢!