Я могу получить идентификатор сокета клиента, когда я его console.log()
. Может ли кто-нибудь сказать мне, как передать его в качестве параметра query param
в контексте, упомянутом ниже:
var params = {
userId: 5,
userType: 2
};
// create a new websocket
var socket = io.connect('http://localhost:8000', { query: params });
socket.on('connect', () => {
console.log('okay '+socket.id);
});
В этом примере пользователь подключается к серверу, и он передает несколько значений в качестве параметра при установлении соединения сокета.
Но как я могу передать идентификатор сокета вместе с ними?
Версия Socket IO: 2. *
Это немного неоднозначно, вы не можете отправить параметры запроса socket.id, потому что вы получаете socket.id, подключившись к серверу socket.io.
Поэтому, если вы действительно хотите сделать это, вы подключаетесь второй раз. Но, на мой взгляд, это очень плохая практика.
io.on('connect', (socket) => { socket.id you will have the id on the server side })