#node.js #express #sockets #mongoose
#node.js #экспресс #розетки #мангуст
Вопрос:
Я пытаюсь использовать сокет.ввод-вывод для добавления websockets на мой серверный сервер. Я получаю порт уже используется ошибка есть идеи?
Я создаю приложение react на интерфейсе, а мой сервер-nodejs. Я хотел бы иметь возможность использовать веб-сайты, чтобы иметь небольшую функцию чата в этом приложении
Вот бэкэнд Index.js
const express = require('express'); const mongoose = require('mongoose'); const cookieSession = require('cookie-session'); const passport = require('passport'); const bodyParser = require('body-parser') const keys = require('./config/keys'); const cors = require('cors'); const socket = require('socket.io'); require("dotenv").config(); require('./models/GoogleUserModel'); // the user model must be placed before this services passport// this must be ran after requiring model bcuz this needs the model. ORDER require('./models/UserModel'); require('./models/FacebookUserModel'); require('./models/Contact'); require('./models/Template'); require('./models/UserProfile') require('./services/passport'); const app = express(); const corsOptions = { origin:"http://localhost:3000", credentials: true, //access-control-allow-credentials:true optionSuccessStatus:200 } app.use(cors(corsOptions)) mongoose.Promise = global.Promise; mongoose.connect(keys.mongoURI, { useNewUrlParser: true, useCreateIndex: true, useUnifiedTopology: true }) mongoose.connection.on('error', () =gt; { throw new Error (`unable to connect to database: ${keys.mongoURI}`) }); app.use(bodyParser.json({limit: '10mb'})) app.use(express.urlencoded( { extended: true })) app.use( cookieSession({ maxAge: 30 * 24 * 60 * 60 * 1000, keys: [keys.cookieKey] }) ) app.use(passport.initialize()); app.use(passport.session()); require('./routes/facebookAuthRoutes')(app); require('./routes/googleAuthRoutes')(app); require('./routes/localAuthRoutes')(app); //require('./routes/billingRoutes')(app); require('./routes/webhookRoutes')(app) require('./routes/userRoutes')(app); // we are passing in the route functions, THEN calling the functions with the app object const io = socket(5000) // this is giving an error of port already in use? does socket need seperate server to run? const PORT = process.env.PORT || 5000; app.listen(PORT);
Комментарии:
1. @jfriend00 ты можешь взглянуть на это? Я видел, как вы ответили на аналогичный вопрос 10 месяцев назад