ruby-on-rails – 如何使用omniauth对服务进行经过身份验证的调用?

我从使用OmniAuth的服务中收到了令牌/秘密,并且可以将其存储给用户,但我不知道如何实际使用这些来调用服务.

在这个问题上看到的最接近的事情是here,但他解决的方式是感觉不对.如果你知道你在做什么,我觉得OmniAuth可能会为你做这一切.

Netflix有一个非常复杂的auth process,所以我希望通过使用OmniAuth从所有这些中抽象出我的所有这些.

鉴于我有一个用户的令牌和秘密,如何使用这些来调用像Netflix这样的服务?

非常感谢 :)

解决方法

嘿,我是OmniAuth宝石的作者. OmniAuth旨在用于身份验证过程.对于像Netflix这样的OAuth提供商,这意味着交换访问令牌的请求令牌,然后用于从API中提取用户信息.这些一次性调用是专门为每个提供程序设计的,并不是给定提供程序的通用API客户端.

您可以做什么使用OmniAuth获取凭据,然后使用另一个特定的库来为网站本身(例如ruby-netflix或其他任何东西,我不确定最好的是什么)来打电话.您可以通过访问env [‘omniauth.auth’] [‘credentials’]来检索在身份验证舞中获得的访问令牌和秘密,然后使用这些来初始化API客户端.

您也可以直接使用OAuth库进行这些调用,但我强烈建议您只使用现有的库,它会更快更容易.所有这些都有意义吗?

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...