【问题标题】:Omniauth with FourSquare issue具有 FourSquare 问题的 Omniauth
【发布时间】:2011-04-24 14:34:28
【问题描述】:

2011/05/01 更新: 后来我仔细阅读了 FourSquare 的 API 文档,发现上面写着:

(请注意,请求参数不是 JSON,它们是标准的 HTTP 键和值。)所有身份验证都是通过 OAuth2 进行的,这意味着所有请求都必须是 https。

这可能是我的开发机器中没有 SSL 连接的问题吗?


大家好!我正在尝试通过 Omniauth 连接 FourSquare,我遵循了下面的 Railscast 教程,并将提供者更改为foursquare。但返回总是“invalid_credentials”。我四处搜索,发现 GitHub 上有关于此的讨论(链接如下),但似乎还没有结论。 有人知道出了什么问题吗?

Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, "XXXXXXX","XXXXXXX"
provider :foursquare, 'XXXXXXX',
'XXXXXXX'
end

RailsCast Link

Discussion on GitHub

【问题讨论】:

  • 确保您获得新的密钥/秘密。如果有人查看此帖子的编辑内容,您发布的预编辑内容仍然可以查看。

标签: ruby-on-rails omniauth foursquare


【解决方案1】:

我有一个可以在foursquare上与omniauth一起使用的gem。

https://github.com/arunagw/omniauth-foursquare

【讨论】:

    【解决方案2】:

    尝试修改您的提供程序初始化程序以指向您系统的证书路径(在 Ubuntu 上为“/etc/ssl/certs”)

    Rails.application.config.middleware.use OmniAuth::Builder do
        provider :twitter, "XXXXXXX","XXXXXXX"
        provider :foursquare, 'XXXXXXX', {:client_options => {:ssl => {:ca_path => "/etc/ssl/certs"}}}
    end
    

    【讨论】:

      【解决方案3】:

      您的配置看起来不错,尽管您可能不想公开共享您的令牌/密钥。

      您在注册 foursquare oauth consumer 时使用的回调 URL 是否与您正在测试的 URL 匹配?如果您在注册消费者时使用了http://www.foo.com/auth/foursquare/callback,但正在您的开发环境 (http://localhost:3000/..) 上进行测试,您将看到 auth/failure 错误。

      【讨论】:

      • 感谢亚当!我正在使用 DynDNS 对此进行测试。我注册的回调 url 是 DynDNS。这会是个问题吗?
      【解决方案4】:

      这就是我所做的:OmniAuth Invalid Response Error

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-05-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-18
        • 1970-01-01
        相关资源
        最近更新 更多