@Svetlana_Ilina

Как добавить прослушивание веб-сокетов к серверу, развернутому для обычных HTTP-запросов?

Появилось желание собрать какой то свой чат, я учу веб и в тонкостях бэкенда пока что не особо, собрала свой небольшой сервер, как к нему прикрутить вебсокеты и возможно ли это?

const PORT = process.env.PORT || 5000
const app = express()

app.use(express.json())
app.use(cookieParser())
app.use(
  cors({
    credentials: true,
    origin: process.env.CLIENT_URL,
  })
)
app.use(bodyParser.json())
app.use('/api', router)
app.use(errorMiddleware) 

const start = async () => {
  try {
    await mongoose.connect(process.env.DB_URL, {
      useNewUrlParser: true,
      useUnifiedTopology: true,
    })
    app.listen(PORT, () => console.log(`Server started on PORT = ${PORT}`))
  } catch (error) {
    console.log(error)
  }
}

start()
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ответы на вопрос 1
bingo347
@bingo347
Crazy on performance...
https://nodejs.org/dist/latest-v20.x/docs/api/http...

const PORT = process.env.PORT || 5000
const app = express()
const server = http.createServer(app)
server.on('upgrade', (req, socket) => {
  // здесь websocket, можно использовать пакет ws
})

server.listen(PORT, () => console.log(`Server started on PORT = ${PORT}`))
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы