【问题标题】:Retrieving OAuth tokens (on server) from Faraday OAuth module (from client)从 Faraday OAuth 模块(从客户端)检索 OAuth 令牌(在服务器上)
【发布时间】:2011-01-21 03:48:37
【问题描述】:

我使用Faraday 在我正在开发的两个网络应用程序(backgroundrelated question)之间进行通信。我使用 OAuth 令牌作为从客户端应用程序到服务器应用程序的上传/连接的一部分。

但是,我似乎无法在标头或 action_dispatch 哈希等中找到 OAuth 令牌。

有什么建议吗?

【问题讨论】:

    标签: ruby-on-rails ruby oauth faraday-oauth


    【解决方案1】:

    我在这里找到了答案:https://github.com/technoweenie/faraday/issues#issue/12

    您好,我遇到了同样的问题,发现这是因为我在中间件之前使用了 Faraday.default_adapter(在 Faraday::Connection 构造函数块中)。 也许这会有所帮助,因为我看到问题仍然存在。 来自: @connection ||= Faraday::Connection.new(:url => "http://...") 做 |builder| builder.adapter Faraday.default_adapter builder.use CookieAuth 结尾 到 @connection ||= Faraday::Connection.new(:url => "http://...") 做 |builder| builder.use CookieAuth builder.adapter Faraday.default_adapter 结尾 为我解决了这个问题。 发生的情况是,当调用 Connection 的任何 http 方法(回退到 Faraday::Connection#run_request)时,default_adapter 实际上会在中间件之前执行请求(如在 Faraday::Adapter::NetHttp#call:45 中)等等修改后的标头不会发送到服务器。 然而测试用例通过了,因为中间件被调用(在请求之后)并更新了环境中的 request_headers。 总而言之,只要确保在实际执行请求的任何适配器之前配置任何“请求修饰符”中间件。

    【讨论】:

    • 有点跑题了,法拉第有 CookieAuth 中间件吗?
    • @madh 实际上不确定。如果发现请发帖。
    • 所以一些 Google Fu 把我带到这里:github.com/wtn/bullion_vault/blob/master/lib/faraday/… 不过我还没有尝试过。
    • 我确定CookieAuth 只是一个自写的中间件。如果您使用任何现有的中间件(例如Faraday::Response::Middleware)对任何类进行子类化,则可以将任何类设为中间件。
    猜你喜欢
    • 2016-05-27
    • 2014-02-25
    • 2013-02-03
    • 1970-01-01
    • 2017-04-30
    • 2019-01-27
    • 2015-04-28
    • 2012-06-20
    • 1970-01-01
    相关资源
    最近更新 更多