如何用oauth获得params?

时间:2010-11-22 17:22:31

标签: ruby oauth oauth-ruby

我对Ruby和OAuth有些困惑。基本上,这就是我正在做的事情:

@oauth.get('/foo.json?page=1')

但是,出于某种原因,除了我的理解之外,提供者应用程序只接收/foo.json,并且删除了参数。

我想知道我是否遗漏了一些明显的东西。

1 个答案:

答案 0 :(得分:0)

对于OAuth 1.0a / RFC 5849,您可能会发现我的Signet OAuth实施比oauth gem更容易使用。 Documentation应该非常简单。 OAuth 2.0支持正在进行中,即将推出。

但是,在您的具体情况下,oauth gem的设计存在问题。 get函数的第一个参数是路径。不是完整的请求URI。他们显然假设没有人会使用该特定方法的查询参数?我的猜测是,这里的基本原理是,由于必须对查询参数进行签名,因此可靠地解析请求URI并合并参数比他们想做的更多吗?

向该图书馆的作者道歉,我的建议就是避免使用它。在我看来,它的设计非常糟糕。对于某些事情来说,这是一个足够好的实现,但是如果你正在谈论一个没有使用Ruby的相应OAuth服务器的API,我认为它没有做得很好。