3

我使用 Devise token_authentication 服务和 ActiveResource 客户端。我希望在每个请求中自动设置 :auth_token 参数!

我试过这个,但这不起作用......

class AuthApp

    def initialize(app)
        @app = app
    end

    def call(env)
        status, headers, response = @app.call(env)

        request = Rack::Request.new(env)
        request.params[:auth_token] = 'jCxKPj8wJJdOnQJB8ERy'

        [status, headers, response]
    end

end

任何想法 ?

4

1 回答 1

4

如果您有包含此拉取请求的最新 rack 副本,您可以使用Rack::Request#update_param

request = Rack::Request.new(env)
request.update_param :auth_token, 'jCxKPj8wJJdOnQJB8ERy'

这将持续存在于env中间件(和 Rails)之间传递的内容中。

于 2012-05-04T22:00:13.283 回答