Принцип работы tcp client server, как указать для какого функционала идет команда? Подскажите как напраить входящий трафик и определить для чего он предназначается?
у меня есть два клиента они общаются через сервер.
клиент1 - > передает логин и пароль на клиент2 - через сервер
клиент2 - > отвечает что логин пароль верные и отправляет ответ через сервер на клиен1
на клиент1 приходит ключ .
и функционада может быть около 10 позиций. как мне показать обоим клиентам и серверу куда что идет ?
clien1.send(admin,admin) - > (server) - > client2(принял, провери)
client2.send(status OK) - > (server) {session key} - > client1(принял ключ сессии)
разных комманд может быть много.

21 Авг 2019 в 06:38
210 +1
0
Ответы
1

Для того чтобы указать для какого функционала идет команда, можно добавить тип или тэг к сообщению, который будет указывать на то, какую операцию нужно выполнить. Например:

client1.send("login", "admin", "admin") - для отправки логина и пароля от клиента 1 к клиенту 2client2.send("status", "OK") - для отправки ответа о статусе со стороны клиента 2 к клиенту 1server.send("session_key", {session key}) - для отправки ключа сессии от сервера к клиенту 1

Таким образом, каждая команда будет содержать информацию о своем функционале. Для определения для чего предназначен входящий трафик, можно основываться на типе или тэге сообщения, который был указан в отправителе. Например, при получении сообщения с типом "login" на сервере можно выполнить проверку логина и пароля, а при получении сообщения с типом "status" отправить ответ клиенту.

Также можно добавить логику обработки команд на стороне сервера, чтобы определить куда идет конкретная команда и как ее обработать. Например:

Если тип сообщения "login", то проверить логин и пароль и отправить ответ клиентуЕсли тип сообщения "status", то отправить его другому клиентуЕсли тип сообщения "session_key", то отправить ключ сессии клиенту

Таким образом, каждый участник (клиент или сервер) сможет понять, какие данные он получил и как ими нужно обработать.

20 Апр в 13:15
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 028 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир