![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
fluffyMan2000 |
![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 39 Регистрация: 13.8.2012 Пользователь №: 3481 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Добрый день.
Я новичек в сетевом программировании, но все же. Пишу клиент-серверную систему. Есть qt клиент и qt сервер. Клиент отправляет запрос (json), сервер обрабатывает запрос и генерирует json ответ. На стороне сервера отправка данных реализована через метод socket-> write(data), где data - это строка. На стороне клиента при получении данных вызывается метод slotReadyRead(), подключенный к сигналу readyRead(). Данные считываются методом socket->readAll(). Но вот проблема, когда сервер передаёт небольшую строку, то клиент принимает ее полностью. Если большую строку (большой Джейсон), то строка передаётся частями. То есть один вызов сигнала readyRead не означает получение ПОЛНОГО сообщения от сервера, насколько я понимаю. Отсюда вопрос, как за один раз передать ВСЮ БОЛЬШУЮ строку? Сообщение отредактировал fluffyMan2000 - 31.10.2013, 18:26 |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 13.7.2025, 23:55 |