app.js 777 B

1234567891011121314151617181920212223242526272829303132333435
  1. const express = require('express');
  2. const app = express();
  3. const http = require('http');
  4. const { Server } = require('socket.io');
  5. const cors = require('cors');
  6. const logger = require('morgan');
  7. const helmet = require('helmet');
  8. const formatsLogger = app.get('env') === 'development' ? 'dev' : 'short';
  9. app.use(helmet());
  10. app.use(logger(formatsLogger));
  11. app.use(cors());
  12. const server = http.createServer(app);
  13. const io = new Server(server, {
  14. cors: {
  15. origin: '*',
  16. methods: ['GET', 'POST'],
  17. },
  18. });
  19. io.on('connection', (socket) => {
  20. console.log(`User Connected: ${socket.id}`);
  21. socket.on('join_room', (data) => {
  22. socket.join(data);
  23. });
  24. socket.on('send_message', (data) => {
  25. socket.to(data.room).emit('receive_message', data);
  26. });
  27. });
  28. module.exports = server;