Я пытаюсь создать автоматизированный инструмент, и мне бы хотелось, чтобы мой скрипт имитировал заголовки, подобные Firefox.В настоящее время выполнение HTTP get будет иметь минимальное количество заголовков.Я верю в метод, принимаю и принимаю.
Это метод, который я сейчас использую:
def fetch(url_str, limit = 10)
raise ArguementError, 'HTTP redirect too deep' if limit == 0
res = Net::HTTP.get_response(URI.parse(url_str))
case res
when Net::HTTPSuccess then
$dpage += res.body
when Net::HTTPRedirection then
$dpage += fetch(res['location'], limit - 1)
else
puts res.error!
end
end
Как я могу изменить это на большее количество заголовков?Или даже изменить «Принять», который уже существует?
Я пробовал метод, использующий «Net :: HTTP :: Get.add_field», но это привело к ответу «Bad Request» от хоста.
Когда я проанализировал пакеты, я понял, почему.Заголовки были не в правильном порядке.Не в том порядке, в котором я добавлял их в свой код.
Есть идеи?