Ваша проблема довольно проста. «Хост» для сервера - это только имя сервера, а не протокол. Поле используется сервером для фактического определения хоста, на который вы пытались связаться (поскольку один сервер может обслуживать несколько сайтов с разными доменными именами).
Вы можете полностью пропустить вызов sf::Http::setHost()
, просто используя конструктор:
sf::Http http("192.168.2.100");
Или, если вы действительно хотите позвонить, просто сделайте так:
http.setHost("192.168.2.100");
Если это не решит проблему, проверьте файлы журнала вашего сервера. Должны быть запросы, если они дошли до него.
Просто для справки, как создается URL / URI:
http://192.168.2.100:8000/index.html
|-----| <- Protocol (you define this by specifically using sf::Http over sf::Ftp for example)
http://192.168.2.100:8000/index.html
|-----------| <- Host
http://192.168.2.100:8000/index.html
|---| <- Port (optional)
http://192.168.2.100:8000/index.html
|--------| <- URI/document (optional and might serve a server dependent default, if empty)