Omniauth与FourSquare问题

更新2011/05/01:我后来仔细阅读了FourSquare的API文档,发现它说:

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

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


大家好! 我正在尝试通过Omniauth连接FourSquare,我按照下面的Railscast完成,并将提供商更改为foursquare。 但返回始终是“invalid_credentials”。 我google了一下,发现在GitHub上有关于此的讨论(下面的链接),但似乎还没有结论。 任何人都知道出了什么问题?

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

RailsCast链接

关于GitHub的讨论

我有一个gem,可以与omniauth一起使用foursquare。

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

尝试修改提供程序初始化程序以指向系统的证书路径(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 

您的配置看起来很好,但您可能不希望公开共享您的令牌/密钥。

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

这就是我所做的: OmniAuth无效的响应错误