nodejs+webrtc实现浏览器端p2p音视频通话完整可用代码
nodejs搭建一个socketio的信令服务器,负责中转信令。
const express = require('express'); const http = require('http'); const { Server } = require("socket.io"); const fs = require('fs'); const https = require('https'); // 改用 https const app = express(); // // 读取 SSL 证书和私钥(请根据实际路径修改) const options = { key: fs.readFileSync('/data/cert/6284283_web.debug.only.bfw.wiki.key'), // 私钥文件换成自己的 cert: fs.readFileSync('/data/cert/6284283_web.debug.only.bfw.wiki.pem') // 证书文件换成自己的 }; const server = https.createServer(options, app); const io = new Server(server, { cors: { origin: "*", methods: ["GET", "POST"] } }); // 使用 Map 结构,更适合存储和删除 const rooms = new Map(); io.on('connection', socket => { console.log(`一个用户已连接: ${socket.id}`); socket.on('join room', roomID => { socket.join(roomID); let room = rooms.get(roomID); if (room) { // 房间已存在,该用户是第二个加入者 room.push(socket.id); const otherUser = room[0]; // 获取第一个用户的ID ...
点击查看剩余70%
网友评论0