Ruby on rails Poltergeist和onResourceReceived函数的使用
在我的项目中,我必须刮几页纸。我用水豚和幻影来做这个。我有一个问题,其中一些页面发送异步XHR请求,我需要阻止它们 我找到了这个案子的解决办法。Phantomjs可以处理请求并中止它- 我编写了js脚本来记录和中止请求: page.onResourceRequested=函数请求,净{ log'Request'+requestData.id+':'+JSON.stringifyrequestData; net.abort; }; 并将其添加到init驱动程序中 但它不起作用。。。 我认为问题在于js变量页面,因为这个变量没有定义扩展:选项只是在浏览器中预加载一些javascript文件 要加载一些js首选项,请按如下方式重写查询:Ruby on rails Poltergeist和onResourceReceived函数的使用,ruby-on-rails,xmlhttprequest,capybara,phantomjs,poltergeist,Ruby On Rails,Xmlhttprequest,Capybara,Phantomjs,Poltergeist,在我的项目中,我必须刮几页纸。我用水豚和幻影来做这个。我有一个问题,其中一些页面发送异步XHR请求,我需要阻止它们 我找到了这个案子的解决办法。Phantomjs可以处理请求并中止它- 我编写了js脚本来记录和中止请求: page.onResourceRequested=函数请求,净{ log'Request'+requestData.id+':'+JSON.stringifyrequestData; net.abort; }; 并将其添加到init驱动程序中 但它不起作用。。。 我认为问题在
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app,
:phantomjs_options => [File.expand_path("../lib/phantomjs/abort_async.js", __FILE__),
'--debug=no',
'--load-images=no',
'--ignore-ssl-errors=yes',
'--ssl-protocol=TLSv1'],
extensions: [],
:debug => false,
js_errors: false)
end
poltergeist现在支持url黑名单和白名单,和capybara webkit一样。
您可以将异步请求的服务器URL列入黑名单。这可能有助于理解这些功能。Hello@Fist!你成功了吗?不,我还在等解决办法。。。
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app,
:phantomjs_options => [File.expand_path("../lib/phantomjs/abort_async.js", __FILE__),
'--debug=no',
'--load-images=no',
'--ignore-ssl-errors=yes',
'--ssl-protocol=TLSv1'],
extensions: [],
:debug => false,
js_errors: false)
end
page.driver.browser.url_blacklist = ['http://www.example.com']