LINUX.ORG.RU

куда вписывать строку запроса в boost::asio -> tcp?

 , ,


0

1
tcp::resolver::query Query("192.168.0.1", "5000", "tcp");

tcp::resolver::iterator EndPointIterator = resolver.resolve(Query);

Выставляем в Boost IP, port и tcp, согласно документации

Вопрос: куда вписывать строку запроса, например «info»?

★★★★★

вписывать строку запроса

А что за строка запроса(ЯННП)? boost::asio::ip::tcp::resolver даст множество tcp адресов, e. g. 127.0.0.1:8080. Алсо

tcp::resolver::query Query("192.168.0.1", "5000", "tcp");

третий аргумент выглядит подозрительно, там же флаги передаются(boost::asio::ip::resolver_query_base::flags)

Deleted
()

То часть от HTTP и делается руками («GET /info HTTP/1.1») или скорее через HTTP-библиотеку, если нужно что-то сложнее тривиального (может Beast может, он должен быть в последних версиях Boost). asio даст только транспортный уровень, а HTTP это уже прикладной.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

Мне нужно на tcp sockets общение с устройством организовать. Устройство принимает в качестве команды строку.

sniper21 ★★★★★
() автор топика
Последнее исправление: sniper21 (всего исправлений: 1)
Ответ на: комментарий от four_str_sam

Это, судя по всему синхронно, а хотелось бы асинхронно, но всёравно спасибо.

sniper21 ★★★★★
() автор топика
Последнее исправление: sniper21 (всего исправлений: 1)
Ответ на: комментарий от Deleted

если я правильно понял документацию, которую хвалят при каждом удобном случае, то там да, флаг который может быть и «http» и «tcp».

Но я только вчера начал с Boost разбираться, так что уверенности нет :)

sniper21 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.