解决了它.
headers = {}
Rack::Utils.set_cookie_header!(headers, name, value)
cookie_string = headers["Set-Cookie"]
Capybara.current_session.driver.browser.set_cookie cookie_string
Run Code Online (Sandbox Code Playgroud)
基于此.
如果你需要同时支持Rack :: Test和Poltergeist:
def set_cookie(name, value)
if Capybara.current_session.driver.respond_to?(:set_cookie)
# Poltergeist driver (JS)
Capybara.current_session.driver.set_cookie(name, value)
else
# Rack::Test driver (non-JS)
headers = {}
Rack::Utils.set_cookie_header!(headers, name, value)
cookie_string = headers["Set-Cookie"]
Capybara.current_session.driver.browser.set_cookie cookie_string
end
end
Run Code Online (Sandbox Code Playgroud)
可能存在逃避问题,因为它只是插值; 虽然工作得很好.
| 归档时间: |
|
| 查看次数: |
1747 次 |
| 最近记录: |