Estos son los 3 archivos principales, sin embargo, no estoy seguro de cómo implementar un socket IO que funcione con netlify. Estoy tratando de agregar un oyente websocket a mi servidor express. ¿Cómo puedo hacer eso?
rutas.js
const users = require('./controllers/users'); const posts = require('./controllers/posts'); const files = require('./controllers/files'); const comments = require('./controllers/comments'); const chatroom = require('./controllers/chatroom'); const { jwtAuth, postAuth, commentAuth } = require('./auth'); const router = require('express').Router(); // Authentication routers router.post('/login', users.validate(), users.login); router.post('/register', users.validate('register'), users.register); router.post('/forgotPassword', users.forgot); router.post('/updatepassword', users.updatepassword); router.post( '/changepassword', users.validate('changepassword'), users.changePassword ); module.exports = app => { app.use('/.netlify/functions/app', router); app.get('*', (req, res) => { res.status(404).json({ message: 'not found' }); }); app.use((err, req, res, next) => { if (err.type === 'entity.parse.failed') { return res.status(400).json({ message: 'bad request' }); } next(err); }); };aplicación.js
const express = require('express'); const serverless = require('serverless-http'); const morgan = require('morgan'); const cors = require('cors'); const expressValidator = require('express-validator'); const passport = require('passport'); const localStrategy = require('./auth/local'); const jwtStrategy = require('./auth/jwt'); const app = express(); const mongoose = require('mongoose'); const config = require('./config'); const connect = url => { return mongoose.connect(url, config.db.options); }; if (require.main === module) { connect(config.db.prod); mongoose.connection.on('error', console.log); } app.use(cors()); app.use(express.json()); app.use(expressValidator()); app.use(morgan('common')); app.use(passport.initialize()); passport.use(localStrategy); passport.use(jwtStrategy); require('./routes')(app); module.exports.handler = serverless(app);índice.js
const app = require('./app'); const mongoose = require('mongoose'); const config = require('./config'); const connect = url => { return mongoose.connect(url, config.db.options); }; if (require.main === module) { connect(config.db.prod); mongoose.connection.on('error', console.log); } module.exports = { connect };Avíseme si se necesita algo más. Netlify hace que las cosas sean un poco más difíciles y cuando lo subo no funciona.