背景
我正在尝试使用 Next.js 建立并连接套接字。我正在遵循标准指南,该指南使用 API 调用来测试套接字服务器是否已在运行,如果没有则创建一个。
我有一个 API 脚本,pages/api/socket/io如下所示:
import { Server } from "socket.io";
export default function SocketHandler(req, res) {
if (res.socket.server.io) {
console.log("Already set up");
res.end();
return;
}
const io = new Server(res.socket.server);
// Event handler for client connections
io.on('connection', (socket) => {
const clientId = socket.id;
console.log('A client connected');
console.log(`A client connected. ID: ${clientId}`);
io.emit('client-new', clientId);
// Event handler for receiving messages from the client
socket.on('message', (data) => {
console.log('Received message:', data);
});
// Event …Run Code Online (Sandbox Code Playgroud)