#socket.io
#socket.io
Вопрос:
Когда я настраиваю socket-io со следующими параметрами: { url: ‘ws: //localhost: 8888’, параметры: {path: ‘/ chatws’, транспорты: [‘websocket’], повторные попытки подключения: ‘3’}}
Я получаю следующую ошибку: не удалось подключиться к WebSocket ‘ws: // localhost: 8888 / chatws /?EIO = 3 amp; transport = websocket’: Ошибка во время рукопожатия WebSocket: Неожиданный код ответа: 501
Если я использую другие фреймворки, которые не добавляют никаких параметров, тогда это работает.
Как удалить EIO и все параметры запроса из URL?
Ответ №1:
Это не тот случай. Пока вы реализуете транспортировку только на основе websocket, вам необходимо настроить это с обеих сторон. По умолчанию используется сокет.io пытается установить соединение с помощью длительного опроса.
Реализация на стороне сервера:
const express = require('express')()
const server = require('http').createServer(express)
const io = require('socket.io')(server,{transports:['websocket']})
Внедрение на стороне клиента :
import io from 'socket.io-client'
const socket = io('http://localhost:8080',{transports: ['websocket']})
У меня это сработало!
Комментарии:
1. Это не отвечает на вопрос — как удалить EIO и все параметры запроса из URL?