Попробуйте триангулировать проблему. Вы можете получить доступ к сайтам из своего браузера, но не из своего кода:
- Из окна командной строки запустите:
gem server
, чтобы запустить хороший маленький веб-сервер.
- Откройте окно браузера для сервера gem, используя:
http://localhost:8808
. Вы должны увидеть красиво отформатированную страницу.
- Запустите ваш код, настроив URL так, чтобы он указывал на гем-сервер по указанному выше адресу. Вы должны увидеть результат, вероятно, его много.
- Если вы получите вывод, вы можете убить гем-сервер, используя
<CNTRL>+C
. В этот момент вы доказали, что Net :: HTTP работает локально, и все готово, за исключением того, что вы выяснили, что является внешним по отношению к вашей машине, что мешает вам увидеть «example.com».
- Если вы не получили никакого вывода, добавьте
require 'open-uri'
к вашему списку требований в вашем коде и замените строку HTTP :: Net на puts open('http://localhost:8808').read
и попробуйте запустить код еще раз.
- Если в вашем сетевом стеке Ruby отсутствует прокрутка HTML-кода, значит,
На этом этапе вы будете знать достаточно, чтобы добавить больше деталей к исходному вопросу, отредактировав его.
Еще одна мысль приходит на ум: вы на Windows. Включена ли у вас сетевая защита, например, брандмауэр? Может быть, он блокирует Ruby от создания соединения, но позволяет вашему браузеру?