Доступ к сокету.ввод-вывод отовсюду в Next.js проект

#reactjs #websocket #socket.io #next.js #vercel

#reactjs #websocket #socket.io #next.js #vercel

Вопрос:

Я пытаюсь создать веб-сайт, который показывает журналы из другого моего проекта. Для этого я использую Next.js .

На данный момент я намерен сделать так, чтобы при отправке следующего POST-запроса я хотел, чтобы сайт автоматически уведомлялся с помощью Socket.io .

 POST 'http://localhost:3000/api/log'

{"message": "Just another log."}
 

Все это возможно с помощью ‘yarn dev’ (‘узел server.js ‘), однако, когда я создаю проект (‘yarn build’ и ‘yarn start’) Я получаю сообщение об ошибке при отправке вышеуказанного запроса POST с указанием ввода-вывода, который я предоставляю в ‘socketIO.js — это не определено.

Как я могу использовать socket.io (на стороне сервера) в нескольких файлах с использованием Next.js ?

Весь мой код находится на GitHub: https://github.com/yByonic/next-logs

Ответ №1:

Вам нужно изменить свой start скрипт в вашем package.json , чтобы запустить свой пользовательский сервер, а не запускать next start .

 "start": "NODE_ENV=production node server.js"
 

Вы можете проверить официальные документы пользовательского сервера для получения более подробной информации.