您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > SocketIO–基于WebSocket构建跨浏览器的实时应用
Socket.IO–基于WebSocket构建跨浏览器的实时应用Socket.IO是一个功能非常强大的框架,能够帮助你构建基于WebSocket的跨浏览器的实时应用。支持主流浏览器,多种平台,多种传输模式,还可以集合Exppress框架构建各种功能复杂的实时应用。使用示例1、使用NodeHTTP服务器服务端示例代码:12345678910111213varapp=require('http').createServer(handler),io=require('socket.io').listen(app),fs=require('fs')app.listen(80);functionhandler(req,res){fs.readFile(__dirname+'/index.html',function(err,data){if(err){res.writeHead(500);returnres.end('Errorloadingindex.html');}141516171819202122232425res.writeHead(200);res.end(data);});}io.sockets.on('connection',function(socket){socket.emit('news',{hello:'world'});socket.on('myotherevent',function(data){console.log(data);});});客户端示例代码:12345678scriptsrc=/socket.io/socket.io.js/scriptscriptvarsocket=io.connect(');socket.on('news',function(data){console.log(data);socket.emit('myotherevent',{my:'data'});});/script2、使用Express3框架服务端示例代码:12345678910111213141516varapp=require('express')(),server=require('http').createServer(app),io=require('socket.io').listen(server);server.listen(80);app.get('/',function(req,res){res.sendfile(__dirname+'/index.html');});io.sockets.on('connection',function(socket){socket.emit('news',{hello:'world'});socket.on('myotherevent',function(data){console.log(data);});});客户端示例代码:12345678scriptsrc=/socket.io/socket.io.js/scriptscriptvarsocket=io.connect(');socket.on('news',function(data){console.log(data);socket.emit('myotherevent',{my:'data'});});/script支持的传输为了给各个不同的浏览器提供实时连接,Socket.IO选择在运行时会自动最有能力的运输模式,不影响API的使用。WebSocketAdobeFlashSocketAJAX长轮询AJAX多重流iframeJSONP轮询支持的浏览器桌面端InternetExplorer5.5+Safari3+GoogleChrome4+Firefox3+Opera10.61+移动端iPhoneSafariiPadSafariAndroidWebKitWebOsWebKit
本文标题:SocketIO–基于WebSocket构建跨浏览器的实时应用
链接地址:https://www.777doc.com/doc-2859323 .html