2010-11-11 31 views
5

我很喜欢OmniAuth的易用性,但我很难在收到令牌后进行额外的API调用。OmniAuth从LinkedIn中提取完整个人档案数据

我以LinkedIn为例,但这不是LinkedIn问题,更重要的是我没有理解如何在通过身份验证后进行后续调用。

我可以向LinkedIn发送请求并进行身份验证。 然后我得到散列回来,它完全填充。

现在我想打电话给LinkedIn并获取我的完整个人资料数据或联系人列表。我该怎么做呢?毕竟我是否需要oauth宝石?

我宁愿避免应用程序特定的宝石,因为我将不得不向twitter和facebook发出同样的请求。

回答

1

Omniauth仅用于验证。

+1

请参阅我对Arkan的回答的评论。 – 2010-11-16 12:39:41

1

Marcel Falliere是正确的。 Omniauth仅用于身份验证。

你可以看看这个插件,它可以解决你的问题。

https://github.com/pengwynn/linkedin

+0

没错,但是我们如何使用OmniAuth来获取配置细节,用户令牌和其他任何需要的请求?一些建议显示会话[:omniauth] [:token]或类似的,但如果有人登录到一个用户帐户,并附有twitter,facebook等等,该怎么办? – 2010-11-16 12:38:47

+0

你说得对。有必要为每个所需的服务获得有效的令牌。我没有答案。有人知道吗? – Arkan 2010-11-16 15:21:01

+0

也许在这个线程提供的信息将帮助你:http://stackoverflow.com/questions/4187178/omniauth-pulling-tweets-fb-places-etc – 2010-11-26 08:34:44

1

我想我只是发现了它的答案。

完成oauth进程后与服务提供者(fb,twitter)omniauth保存用户。在这里它传递一个散列给用户对象,散列的内容在这里https://github.com/intridea/omniauth/wiki/Auth-Hash-Schema这些凭证部分可以用来请求进一步的请求(事实上,你将不得不将这些保存在你的用户对象中)。

相关问题