Articles of socket.io

如何在node.js和mongodb中实现geoip

我在node.js中看到了一些使用geoip的例子,例如https://github.com/kuno/GeoIP.git和https://github.com/wadey/node-geoip 。 然而,我想要的是显示地图显示geoip为特定的用户。如何实现。

Node.js和Socket.io – 他们能够使用实时Web应用程序吗?

我将build立一个Web应用程序来pipe理笔记(想想类似Evernote的东西)。 我决定使用Backbone.js + JQuery客户端。 服务器端,我还没有决定:纯PHP(我知道得很好)或Node.js + Socket.io(对我来说是全新的)。 我正在考虑Node.js + Socket.io,因为我想让我的web应用程序是实时的(例如:如果用户更新了一个便笺,该便笺就会立即为共享该便笺的协作者更新,而无需重新加载页面)。 作为第三种select,我还在考虑将Node.js和Socket.io用于REST API的UI和PHP(我觉得使用PHP构buildAPI更加舒适)。 PHP和Javascript代码将共享MongoDB数据库。 我的问题是:如果我使用PHP开发Web应用程序的REST API,并通过API创build用户的新备注(即:Android应用程序发送API请求来创build该备注),Node.js, Socket.it和Backbone.js能够立即更新用户的用户界面,并在他们的屏幕上显示新的笔记? 我认为可以称为“推送通知”。 我希望我已经清楚了。 另外,还有没有其他优秀的技术来构build实时Web应用程序?

Node.js和socket.io在Cloud9 IDE上不起作用

有没有人有经验使Node.js和socket.io在Cloud9 IDE上工作? “示例(带有Socket.io的NodeJS)”( https://c9.io/site/blog/2013/05/native-websockets-support/ )不起作用。 首先,服务器( https://c9.io/etlolap/webapp,/test.js )抛出一个错误,除非我按照下面的方法修复。 我点击运行button,而test.js是在活动选项卡上。 var socketIo = require('socket.io'), io = socketIo.listen(Number(process.env.PORT)); io.sockets.on('connection', function (socket) { socket.emit('news', { hello: 'world' }); socket.on('my other event', function (data) { console.log(data); }); }); 然后,我的客户端( https://c9.io/etlolap/webapp,/ test.html)仍然无法连接。 我点击预览button,而test.html是在活动选项卡上。 <!doctype html> <html> <head> <script src="/socket.io/socket.io.js"></script> <script> var socket = io.connect('https://webapp-c9-etlolap.c9.io'); socket.on('news', function (data) { console.log(data); socket.emit('my […]

Socket.IO是一个可靠的聊天服务器为大量的用户,如果是的什么是你的堆栈?

我已经阅读了许多关于Socket.IO的博客,并且对它的function印象深刻。 我打算使用它的一个聊天应用程序和普通的用户数量最less的用户,它正在完美的工作。 但在生产networking中使用Socket.IO时是否有任何缺陷? Socket.IO最适合于消息stream量非常大的大型消息系统。 如果是的话,什么是最好的技术堆栈沿着Socket.IO使用,“即使在更多的负载时,100%可靠”。 任何人都已经有了Socket.IO在实现大规模消息传递系统方面的经验。 Stack我想用的是Socket.IO,Redis,Cassandra和MySQL。 到目前为止,我已经经历了许多Socket.IO的例子,许多人试图用不同的方式来做。 有些人使用Array来存储Socket ID,而有些人使用Redis。 我明白,使用Redis将有一定的帮助。 但我不想停在那里。 我想学习Socket.IO应用程序的最佳体系结构。 请build议我一个path。 编辑 对于我来说,最好的堆栈就是一种失败的速度比别人less的东西。

Socket.io否请求的资源上存在“Access-Control-Allow-Origin”标题。 Origin'http:// localhost'因此不被允许访问

我想用socket.io学习nodejs,目前我正在使用GianlucaGuarini的这个教程 。 当input我的client.html文件,我得到以下错误。 我知道这是什么意思,它是为了防止跨浏览器脚本,但我不知道如何让我的nodejs脚本访问client.html文件。 XMLHttpRequest cannot load http://localhost:8000/socket.io/?EIO=3&transport=polling&t=1422653081432-10. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access. 这是我的代码与套接字的一部分。 var app = require('http').createServer(handler), io = require('socket.io').listen(app), fs = require('fs'), mysql = require('mysql'), connectionsArray = [], connection = mysql.createConnection({ host: 'localhost', user: 'root', password: '', database: 'database', port: 3306 }), […]

实现与Socket.IO和NodeJS的audio聊天

我使用sails.js ( node.js )和socket.IO创build了一个聊天应用程序。 我需要实现audio chat和file transfers 。 任何人都可以帮助我获得基本的教程链接集成WebRTC与socket.IO ? 提前致谢。

socket.io – 广播给某些用户

我需要使用websockets(socket.io + node.js)来构buildtwosome聊天。 所以,向所有用户广播消息的简单例子: socket.on('user message', function (msg) { socket.broadcast.emit('user message', socket.nickname, msg); }); 但是,我怎样才能从某个用户向某个用户播放?

Node.js + AngularJS + socket.io:连接状态并手动断开连接

我在客户端上使用了socket.io和angularjs的nodejs。 我从互联网上find了angular-socketio的例子,并且给它添加了disconnect方法。 套接字服务: angular.module('app') .factory('socket', ['$rootScope', function ($rootScope) { var socket = io.connect(); return { on: function (eventName, callback) { socket.on(eventName, function () { var args = arguments; $rootScope.$apply(function () { callback.apply(socket, args); }); }); }, emit: function (eventName, data, callback) { socket.emit(eventName, data, function () { var args = arguments; $rootScope.$apply(function () { if […]

如何删除socket.io中的一个房间

我想静态删除一个房间的所有用户,有效地删除该房间。 这个想法是,将来可能会再次创build另一个同名的房间,但我希望它创build为空(没有前一个房间的听众)。 我对自己pipe理房间的状态不感兴趣,但好奇的是我可以利用socket.io的内部工具来做到这一点。 这可能吗? (也见这个问题 )

在socket.io中使用restify时,'headers already sent'错误

我正在跟随正式的游戏指南来使用socketio和restify。 api.js var mongoose = require('mongoose'); var restify = require('restify'); var fs = require('fs'); var server = restify.createServer({ name: 'myapp', version: '1.0.0' }); var io = require('socket.io')(server); server.get('/', function indexHTML(req, res, next) { fs.readFile(__dirname + '/sockettest.html', function (err, data) { if (err) { next(err); return; } res.setHeader('Content-Type', 'text/html'); res.writeHead(200); res.end(data); next(); }); }); io.on('connection', function(socket){ […]