Articles of sails.io.js

在angular2中链接sails.io.js

我无法使用angular2使用sails.io.js。 我使用angular2-sails库。 首先,我决定使用我的app.component.ts中的代码 this._sailsService.connect(this.url); 它的工作原理,但是当我启动应用程序,我也有这些消息“套接字正试图重新连接到风帆..”我检查,它试图连接到端口4200。 我用sails.io.js "scripts": ["sails.io.js"] 在angular-cli.json中。 但我尝试了其他的东西: <script src="sails.io.js"> // I also tried src="src/sails.io.js </script> <script type="text/javascript"> io.sails.useCORSRouteToGetCookie = false; io.sails.url = 'http://localhost:1337'; </script> 在index.html中,我的浏览器返回它无法加载脚本在“ http:// localhost:4200 / sails.io.js ”或“ http:// localhost:4200 / src / sails.io.js ” 文件夹: app.js angular-cli.json src -index.html -sails.io.js -app –app.component.ts 我不知道为什么它会在angular-cli.json中调用时连接到4200,以及为什么在索引中调用时无法访问我的sails.io.js。

为什么我使用Socket.IO连接NodeJS服务器(Sails)到另一个NodeJS服务器(Express4)失败?

我正尝试使用socket.io-client将Node.JS(使用Sails.JS编写)应用程序连接到另一个Node.JS服务器(Express4 / Socket.io)。 我的Sails Service app/services/Watcher.js看起来像 var client = require('../../node_modules/sails/node_modules/socket.io/node_modules/socket.io-client'); // callback of the form function(socket) exports.connect = function(callback) { sails.log.debug("will connect socket to", sails.config.watcher.uri, "with Socket.io-client version", client.version); var socket = client.connect(sails.config.watcher.uri); socket.on('connect', function(){ sails.log.debug("connected"); socket.on('disconnect', function(){ sails.log.debug("Disconnected"); }); socket.on('error', function(err){ sails.log.debug("Could not connect", err); }); callback(socket); }); }; 这是从config/bootstrap.js调用,如下所示: Watcher.connect(function(socket){ sails.log.debug("Connected watcher to […]

如何在sails控制器中获取当前套接字对象或id?

我想通过sails.js(v0.12)控制器函数访问当前连接的套接字id。 sails.sockets.getId(req.socket); 显示未定义,因为这不是一个套接字请求 我的目标是成功login后,将我的用户的在线状态设置在数据库中 login: function (req, res) { Util.login(req, function(){ var socketId = sails.sockets.getId(req.socket); console.log('socketId ===', socketId); // return undefined }); }, 基本上我想访问控制器中的当前用户的套接字对象或在套接字方法on访问当前用户的会话对象 另外,我不知道如何重写我的旧sockets.onConnect处理程序 onConnect: function(session, socket) { // Proceed only if the user is logged in if (session.me) { //console.log('test',session); User.findOne({id: session.me}).exec(function(err, user) { var socketId = sails.sockets.getId(socket); user.status = 'online'; user.ip = […]

为什么我的WebSockets握手失败与ERR_CONNECTION_RESET?

我刚刚创build了一个新的sails.js应用程序 sails new testProject 然后我做了 sails lift 现在我浏览我的地址( http://153.92.xx.xxx:1337 ),一切正常。 不过,我知道sails默认使用XHR,但如果可以的话,会尝试升级到WebSockets。 无论我尝试什么,我都无法使WebSocket工作。 我可以看到,该应用程序试图连接,但只是(待定)约18秒,才放弃。 然后回到XHR。 错误如下: WebSocket connection to 'ws://153.92.xx.xxx:1337/socket.io/?__sails_io_sdk_version=0.11.0&__sails_io_sdk_platform=browser&__sails_io_sdk_language=javascript&EIO=3&transport=websocket&sid=8qjNepcGV5Rh3VvzAAAA' failed: Error during WebSocket handshake: net::ERR_CONNECTION_RESET 我可能做错了什么? Sailsjs v0.11.2 Nodejs v0.12.7 Debian 8 x64 iptables的一切都完全接受

套接字服务器在风帆js

我有一个MySQL表,我正在使用它来存储来自IOT设备的数据。数据正在被设备每隔10秒钟发送一次。 基本上,传感器收集风速数据并将其直接传送到称为iotdata的远程mysql数据库表 我想build立一个服务器,每隔10秒后读取iotdata ,并通知任何连接的客户端收到的数据。 是否有可能在sails js中构build这样的服务器?

永远保持每100秒后重新启动帆

我已经build立了基于networking套接字的应用程序使用sails js(v0.11.2)和mysql(5.6.22)与sails_mysql_live_connect 。 我已经设置mysql的wait_timeout为GC(垃圾收集器)100秒closures任何未使用的打开连接。 由于wait_timeout,mysql现在正在closuresWeb套接字连接到数据库100秒后,永远重新启动航行,因为数据库连接已closures。 每当mysqlclosures连接时,我都会在sail中出错 有没有任何解决这个问题,而不增加wait_timeout?

如何在sails中configurationnode-pushserver?

我正在用mongodb使用js风格。我需要为android和ios实现推送通知。 我怎么能实现它。 我在网上search了很多关于风帆js的推送通知的东西,但我没有find任何有用的资源在js中实现推送通知。 我尝试了节点推送服务器,但没有得到如何在sails中configurationnode-pushserver,所以任何人都可以帮助我这个。

自定义模型validation器SailsJS

使用自定义模型validation程序检查模型中的logging时。 价差的回报似乎并没有结束控制stream。 //Post.js Model /** * Custom Validator **/ types: { isUserValid: function(user_id) { var Promise = require('bluebird'); Promise.all([ User.findOne({id: user_id}) ]) .spread(function(user) { console.log(user); if (user === null || user === undefined) { console.log('failed'); return false; }else{ console.log('passed'); return true; } }); } }, 我的回应是一个标准的validation失败的回应。 { "error": "E_VALIDATION", "status": 400, "summary": "1 attribute is […]

用node.js套接字客户端发送事件到sails.js(0.11.x)

服务器 :sails.js(0.11.x)是服务器 客户端 :一个包含sails.io@0.11.5和socket.io-client@1.3.5的node.js脚本 大图 :我有或将有一个连接到sails.js服务器的nod​​e.js脚本的场,并将执行各种任务。 即时目标 :我想在客户端 – >服务器的套接字连接期间发出事件,例如: socket.emit('got_job', job.id); 为什么? 如果可能的话,我可以在一个控制器(或控制器+服务)中的服务器端创build各种事件处理程序,并保持我的代码清洁,同时pipe理客户端/服务器端点之间的一组有状态事务以支持此脚本场。 文档 :这是如何使用socket.io客户端sails.js这个每帆的文档: https : //github.com/balderdashy/sails.io.js? files =1# for-nodejs 我没有太多的代码来分享除了那个链接之外的东西,但是我会在这里粘贴它,以防万一: var socketIOClient = require('socket.io-client'); var sailsIOClient = require('sails.io.js'); // Instantiate the socket client (`io`) // (for now, you must explicitly pass in the socket.io client when using this library from Node.js) var […]

使用套接字保持Sails.js集合的客户端同步

我非常喜欢Meteor的pub / sub。 我想知道是否有一种方法来获得类似的工作stream,使用sails.js或一般的套接字库。 特别是,我希望能够做的事情是: // Server-side: App.publish('myCollection', -> collection.find({})) // Client-side: let myCollection = App.subscribe('myCollection') let bob = myCollection.find({name: 'Bob'}) myCollection.insert({name: 'Amelie'}, callback) 所有与服务器的交互应该在后台进行。