Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QNetworkAccessManager. Обмен данными через свой сокет.
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Ввод/Вывод, Сеть. Межпроцессное взаимодействие
MishaUA
Обычно при запросах через QNetworkAccessManager, он устанавливает соединение с сервером, передает ему данные и получает ответ, для этого он использует какой-то свой сокет. У меня задача немножко не стандартная.
Мне надо сделать так, чтобы программа с QNetworkAccessManager работала в качестве сервера, к ней подключался клиент (который является веб-сервером), далее создавался QTcpSocket и далее обмен данными происходил уже через него.
Сам сервер, с которого надо будет запрашивать файлы, является неким устройством, которое можно настраивать по сети. Но из-за NAT к нему нельзя подключиться, поэтому надо сделать так, чтобы оно подключалось к программе (на пк, где она стоит, есть белый IP).
Собственно, вопрос состоит в том, как "подсунуть" QNetworkAccessManager'у свой QTcpSocket, ну или просто свои методы чтения/записи по сети.
Если с этим ничего не получится, то придется работать вообще без QNetworkAccessManager, на голом QTcpSocket, но не хотелось бы тратить время)))
На стороне устройств-сервера это легко реализуется, там вопросов нет.
Алексей1153
создать QTcpServer и слушать порт. Сигнал newConnection() соединить со слотом, где вызвать nextPendingConnection() и через полученный сокет делать обмен
MishaUA
Примерно так и сделал, потом просто изменил концепцию)))
Но за ответ спасибо!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2018 IPS, Inc.