Ruby 2 使用 Typhoeus 拦截请求

Ruby 2 intercepting request with Typhoeus

我想在使用 typhoeus 命中请求之前更改查询参数。正确的做法应该是什么?我们在 Ruby 中是否有像 Java 中那样的拦截器,我应该像 Rails 中那样使用 before_filter 之类的东西还是在 Ruby 中使用元编程? 我刚刚检查了 Typhoeus::Request::Before module 来挂钩请求。任何人都可以帮助我如何实施它?

我已经实施 typhoeus before 以在请求执行之前更改查询参数,如下所示。希望对大家有帮助。

require 'uri'
Typhoeus.before { |request| 
    uri = URI.parse(request.base_url)
    uri.query = [uri.query, "param1=value1"].compact.join('&') 
    request.base_url = uri.to_s
    request
}