2

我需要在应用程序本身的 Rails 应用程序上创建请求。

像这样的东西(伪代码)

def some_method()
    clone_request = request.clone
    request.url = "some/url/"
    result_html = Rails.application.run(request)
    # ...
end

导轨版本 3.2.8

这甚至可能吗?谢谢你。

4

1 回答 1

4

您可以使用app.get("/some/url/")来生成请求。然后,运行app.request以获取请求数据、app.response响应和app.response.bodyhtml。

如果您需要进行身份验证,请先运行它(修改为您登录的方式): app.post("/session", :email => "email@host.com", :password => "******")

如果您需要其他实例: app2 = ActionDispatch::Integration::Session.new(Rails.application)

于 2012-09-25T18:39:07.830 回答