let app = require('http').createServer()
let io = require('socket.io')(app)
app.listen(3000);
let io = require('socket.io')(app, {
serveClient: false
})
let app = require('http').createServer()
let io = require('socket.io')()
io.serveClient(false)
io.listen(app) // 或者io.attach(app)
let io = require('socket.io')(app, {
path: '/io'
})
let app = require('http').createServer()
let io = require('socket.io')()
io.path('/io')
io.listen(app)
let socket = io('http://localhost:3000?token=abc')
socket.on('connect', () => {
console.log('connect')
})
socket.on('connect_error', err => {
socket.disconnect()
console.log('connect_error', err)
})
let app = require('http').createServer()
let io = require('socket.io')(app, {
allowRequest: (req, cb) => {
if (req._query && req._query.token === 'abc') return cb(null, true)
cb(null, false)
}
});
let app = require('http').createServer()
let io = require('socket.io')(app, {
origins: 'http://localhost:3000'
})
io.origins('http://localhost:*')
io.origins((origin, cb) => {
if (origin === 'http://localhost:3000/') return cb(null, true)
cb(null, false)
})
let editSocket = io('edit.socket.test')
let messageSocket = io('message.socket.test')
let app = require('http').createServer()
let io = require('socket.io')(app)
let editServer = io.of('/edit')
let messsageServer = io.of('/message')
editServer.on('connection', socket => {
//编辑相关
})
messsageServer.on('connection', socket => {
/消息相关
})
let editSocket = io('socket.test/edit')
let messageSocket = io('socket.test/message')
let app = require('http').createServer()
let io = require('socket.io')(app)
io.on('connection', socket => {
//编辑相关
io.emit('edit:test')
io.on('edit:test', data => {
})
//消息相关
io.emit('message:test')
io.on('message:test', data => {
})
}
let app = require('http').createServer()
let io = require('socket.io')(app)
io.sockets // io.of('/').sockets
io.emit // 代理io.of('/').emit, 类似函数有'to', 'in', 'use', 'send', 'write', 'clients', 'compress'
io.use((socket, next) => {
if (socket.request.headers.cookie) return next()
next(new Error('Authentication error'))
})
socket.join('room name') //进入
socket.leave('room name') //退出
io.to('some room').emit('some event') // io.to与io.in同义,向某个聊天室的所有成员发送消息
socket.on('say to someone', (id, msg) => {
socket.broadcast.to(id).emit('my message', msg)
})
io.on('connection', socket => {
socket.emit('an event', { some: 'data' }) //普通消息
socket.emit('ferret', 'tobi', function (data) { //应答消息
console.log(data); // data will be 'woot'
})
})
socket.on('ferret', (name, fn) => {
fn('woot')
})
// 客户端发送消息
socket.emit('hello', 'can you hear me?', 1, 2, 'abc');
// 向所有连接的客户端(除了自己)发送消息
socket.broadcast.emit('broadcast', 'hello friends!');
// 向game聊天室发送消息,自己不算
socket.to('game').emit('nice game', "let's play a game");
// 同时向game1和game2聊天室发送消息,自己不算
socket.to('game1').to('game2').emit('nice game', "let's play a game (too)");
// 向game聊天室的所有人发送消息
io.in('game').emit('big-announcement', 'the game will start soon');
// 发送消息到<socketid>客户端
socket.to(<socketid>).emit('hey', 'I just met you');
// 发送应答消息
socket.emit('question', 'do you think so?', function (answer) {});
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有