Я использую watir с безголовым браузером.Мне нужно выполнить три шага: добавить местоположение, добавить автомобиль и получить товар с другого сайта, для информации, которую я хочу получить с другого сайта.Я отправляю эти три детали с моего сервера и выполняю все эти три шага в одном HTTP-запросе с помощью watir и headless.
Я просто хочу разбить один http-запрос на три http-запроса на моем сервере.Запрос будет: 1) add_location: запустить запрос http, который откроет браузер без заголовка и выбрать местоположение.
2) add_vehicle: запустить запрос http, который будет использовать браузер без заголовка, в котором добавлено местоположение, и мы выберемтранспортное средство.
3) Получить продукт: запустить запрос http, который будет использовать браузер без заголовка, в котором добавлены местоположение и машина, будет загружен список продуктов.
Я не получаю никакого способа повторно использоватьwatir и безголовый сеанс, который уже открыт в следующем http-запросе на стороне rails.
Пример кода:
class TestsController < ApplicationController
def add_location
@headless = Headless.new
@headless.start
@watir = Watir::Browser.new
@watir.goto('www.google.com')
@watir.text_field(id: 'findstore-input')
.wait_until(&:present?).set(params[:zip_code])
@watir.a(id: 'findstore-button').click
@watir.div(class: 'notifier').wait_while(&:present?)
end
def add_vehicle
#need to resuse above @watir object in this action
end
end