Russian Qt Forum
Апрель 18, 2024, 08:21
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Работа с сетью
>
[РЕШЕНО] Клиент-сервер: идентификация клиентов.
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: [РЕШЕНО] Клиент-сервер: идентификация клиентов. (Прочитано 12596 раз)
Yegor
Гость
[РЕШЕНО] Клиент-сервер: идентификация клиентов.
«
:
Май 22, 2017, 14:05 »
Здравствуйте!
Есть сервер. Принимает приходящие соединения от клиентов, с помощью
QTcpServer
. Соединение устанавливается на долго, идет обмен данными. У сервера есть БД c информацией о всех своих клиентах. Только им можно подключаться, другим подключение запрещено.
Клиенты подключаются к серверу с помощью QTcpSocket.
Вопрос: как идентифицировать подключающиеся клиенты? При подключении можно взять
QTcpSocket
, а как узнать какому именно клиенту он принадлежит.
Думаю, задача распространенная.
Спасибо!
«
Последнее редактирование: Май 22, 2017, 15:32 от Yegor
»
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Клиент-сервер: идентификация клиентов.
«
Ответ #1 :
Май 22, 2017, 14:10 »
Пусть клиент первым сообщением передает данные о себе.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Yegor
Гость
Re: Клиент-сервер: идентификация клиентов.
«
Ответ #2 :
Май 22, 2017, 15:10 »
Цитата: Пантер от Май 22, 2017, 14:10
Пусть клиент первым сообщением передает данные о себе.
То есть пусть передаст (запишет байтами) свой идентификатор, а сервер считает из сокета эти байты. А это общепринятая практика?
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Клиент-сервер: идентификация клиентов.
«
Ответ #3 :
Май 22, 2017, 15:22 »
Да, у каждого взаимодействия есть свой протокол. Попробуй вот такой протокол:
Код:
<PROTOCOL 1.0
>PROTOCOL OK
<LOGIN name=vasya password=long_vasya_parol
>LOGIN OK
<SOME_COMMAND
>SOME_COMMAND_RESULT
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Yegor
Гость
Re: Клиент-сервер: идентификация клиентов.
«
Ответ #4 :
Май 22, 2017, 15:32 »
Понятно, можно придумать свой собственный протокол авторизации. Спасибо большое!
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...