I only want a link from which I can make requests from server to frontend not want specific api’s.
If anyone know how to convert this below nodejs & express server into next.js backend server then please let me know.
Note:- When I host my next app, I also want to host backend side by side, so that frontend can simeltenisly use the backend api to connect users.
My server.js code:-
const express = require('express');
const cors = require("cors");
const { createServer } = require('http');
const app = express();
const server = createServer(app);
const io = require("socket.io")(server);
const { v4: uuidv4 } = require('uuid');
require("dotenv").config();
app.use(express.json());
app.use(cors());
const port = process.env.PORT || 5500;
app.get('/', (req, res) => {
res.send(`Backend is running, congrats ${Date()}`)
})
let users = [];
io.on("connection", socket => {
socket.on("new-user", () => {
const generatedUUID = uuidv4();
let remote_peer_id = searchForPeer(generatedUUID);
//logic
socket.emit("new-user", { peer_id: generatedUUID, remote_peer_id });
console.log(`A user connected (peer id: ${generatedUUID}`);
})
socket.on("stop", () => {
let remote_peer_id = null;
//logic
})
socket.on("start", () => {
//logic
})
socket.on("next", () => {
let remote_peer_id = null;
//logic
})
socket.on("disconnect", () => {
let remote_peer_id = null;
//logic
})
})
function onPeerDisconnect(user_peer_id) {
const index = users.findIndex(user => user.peer_id === user_peer_id);
if (index !== -1) {
const { peer_id, socket_id } = users[index];
const new_remote_peer_id = searchForPeer(peer_id);
users[index].remote_peer_id = new_remote_peer_id;
io.to(socket_id).emit("peer-disconnected", { new_remote_peer_id });
}
}
function searchForPeer(user_peer_id) {
let found = null;
for (let i = 0; i < users.length; i++) {
const { started, peer_id, remote_peer_id } = users[i];
if (started === true && remote_peer_id === null && peer_id !== user_peer_id) {
users[i].remote_peer_id = user_peer_id;
found = peer_id;
break;
}
}
return found;
}
server.listen(port, () => console.log(`???? Server is now running on port ${port}`));
Accutally I am new in nextjs for running backend with frontend but I have watched so many tutorials but didn’t find the solution.