我正在从由默认 Rack 驱动程序支持的 Capybara 过渡到由 Poltergeist 支持的 Capybara。
出于令人沮丧的原因,我需要在加载页面之前处理会话数据。但我不知道如何直接使用 Rack 驱动程序操作会话,所以我
Capybara.current_session.driver.submit :post, "/current_search", {:session => :data }
不幸的是,Poltergeistdriver
对象没有submit
方法,就像 Rack 驱动程序一样。
有三种可能:
- 如何使用 poltergeist/phantomjs 提交 POST 请求?(实现这似乎是最简单的)
- 如何使用 poltergeist/phantomjs 直接操作会话数据?
- 我可以重构代码,从而不再需要直接操作会话数据。这将是耗时的并且是低优先级的。
PS:由于在 Ruby 1.8 上,我们被困在Poltergeist v1.0.2