Задать вопрос
@80689248440

Как работать с сокетами? Что куда отправляется?

Вдохновившись вот этой статьёй https://habrahabr.ru/post/301822/ и кодом с гитхаба https://github.com/anlide/websocket решил разобраться.
Не доходит как сделать так чтоб подключившиеся постоянно получали данные с сокета - например данные графика и только тогда когда они отличны от тех что есть. Так же не понимаю как постучаться в обратную сторону - например могу сделать чтоб что-то пришло в браузер ответом (то есть я должен сообщит серверу что мне что-то надо, но не могу чтоб сервер мне сам прислал что-то при событии например когда получил личное сообщение).
Еще не понятнее реализовать личный кабинет на сокетах - например после авторизации юзер попадает в спец раздел сайта и на js он начинает получать данные (из первого вопроса + свои личные данные) - сессии как я понял не подходят - нужно именно отправить какие-то данные чтоб авторизовать в сокете юзера - я правильно понял?
Вобще как работает php с js через сокеты?
Информации вроде много но толком рерайт одной и той же статьи.
  • Вопрос задан
  • 1183 просмотра
Подписаться 1 Средний Комментировать
Ответ пользователя Troodi Larson К ответам на вопрос (3)
Знакомы с ajax? Различия лишь в том, что сокеты всегда держат коннект. Как работать?
var socket = new WebSocket("wss:/сайт.ру:7777/");
socket.onmessage = function(event) {
	console.log(event.data)
};

Тут показан пример обработки приходящего сообщения с сервера. Ответ вывести в консоль. Данные можно также отправлять и на сервер. Лично мне нравится Workerman библиотека. Однако, чтобы сокет работал, надо запускать php через консоль и он работал постоянно. Данные на стороне сервера проверяйте как удобно.
Ответ написан