问题标签 [sails.io.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1664 浏览

node.js - Sails 0.10 ModelIdentity.subscribe 或 .watch 以及用于 publishCreate()?

我正在研究SailsCasts并且正在开发SailsJS beta 版本 0.10

一切正常,除了在0.9.7中,我使用这个:

  • 如何为 0.10 做到这一点?

特别是,订阅publishUpdatepublishDestroy工作正常。

对于publishCreate,我需要'User.subscribe(req.socket)'并且我在控制台中有警告:

接着:

  • 'model.watch()'和 和有什么区别'model.subscribe()'
0 投票
2 回答
5115 浏览

websocket - 使用sails.io.js 来自前端的API 请求

我有一个基本的前端(html、css、jquery),我想使用sails.io.js 与API 服务器进行通信(使用sails 开发,启用cors)。API 在 localhost:10000 上运行,但稍后它将在另一个域上,而不是 webclient 上的域。

直接从 jquery,我可以向这个 API 发出一些获取请求并获得预期的结果。

谈到websocket,我有一些问题......在index.html(只是为了测试)中,我放了以下内容:

但是 Chrome 的开发者工具告诉我

任何想法 ?

更新

我正在使用 web 服务器 (python -m SimpleHTTPServer) 为 index.html 提供服务,
我已经使用 bower 安装了sails.io.js。

我试图使这个测试尽可能简单:

索引.html

index.js:

我的sails (0.9.16) API 仅在 GET /data 路由上返回一个 json 对象。

我在 api 中实现了一个虚拟的 __getcookie 函数:

并在interpret.js 中评论了第481 行(Scott 评论如下)。

我还修改了 config/socket.js :

=> 我现在可以从我的 API 的 /data 路由中得到结果 :)

但是......在每个请求上我都有以下错误:

0 投票
0 回答
133 浏览

node.js - HTTP 调用有效,套接字使用 Passport 失败

所以我正在运行 Sailsv0.10,并且我有一个相当简单的蓝图覆盖用于在我的 WorkoutController 中创建。

模型看起来像这样

锻炼.js ->

当我向 /workout 发送一个 http POST 时,一切都按预期工作,但是当我使用sails io 套接字客户端通过套接字发送它时,我得到以下信息

我不确定状态代码 500 是否相关,但没有其他有用信息。

为了尝试定位我也尝试过的问题

  • 禁用覆盖功能
  • 删除模型中的关联
  • 删除枚举
  • 使用通过套接字工作的另一个模型的相同代码进行测试

更新,所以问题似乎与政策有关

一切看起来都很好,所以我仍然不确定发生了什么

0 投票
2 回答
163 浏览

sails.js - Sails v0.10.x 在生产模式下不发送更新或添加到消息

我在生产模式下遇到了 Sails WebSockets 的问题。当我在开发模式下运行 Sails - 即sails lift- 我收到了消防软管上的所有消息。但是,当我在生产模式下运行 Sails 时 - 即sails lift --prod- 我只收到创建消息。

例如,我的套接字侦听器代码如下所示:

当我在开发模式下运行时,我会收到update房间addedTo消息。我也得到createupdate消息的人。但是,当我在生产模式下运行时。我只收到create用户的消息,没有updateaddedTo消息。

我正在运行 Sails v.0.10.2。

0 投票
2 回答
630 浏览

node.js - Sails.js 中的多个单独聊天

我在sails.js 上看到了几个聊天功能的例子。但是,他们所有人都创建了一个大型聊天,所有用户都被放置在其中。

如何创建多个聊天(因此在一个聊天中发布的消息在另一个聊天中不可见)。

我不确定我是否正确理解了这个问题。看起来发生的事情是客户端做io.socket.post('/message', { someMessageData })了,结果订阅了所有消息。

有没有办法过滤它(在服务器端)它只在一个聊天室中订阅消息。

我看到套接字有id。如果服务器端直接使用 socket.io,我只会收集需要发送消息的 id 列表。

但是,Sails.js 隐藏了这个级别。结果,我不确定如何在服务器上配置它。

我看到了类似的问题。然而,它已经相当老了(考虑到 Sails.js 的变化速度)。我不确定我应该把关于 Model.subscribe 和 Model.publish 的代码放在哪里,考虑到它们都是按约定隐藏的(所以看起来我需要在自动订阅时覆盖一些默认行为)。

0 投票
1 回答
1231 浏览

angularjs - 使用 nginx、sails 和 upstart 的跨域配置问题

我在使用 nginx 和sails 时遇到了跨域配置问题。问题是,如果我让套接字正确连接,http://domain-server.com/socket.io/ 那么 RESTful 请求将失败。如果 RESTful 有效,则套接字不会。

设置

客户http://domain.com

服务器http://server-domain.com

"sails.io.js": "0.10.3"客户端是一个使用这个配置的角度应用程序io.sails.url = 'http://domain-server.com';

Server 是一个兼具 RESTful 请求和套接字功能的 Sails 应用程序。

帆 CORS 配置

Sails 插座配置

nginx 配置

注释掉的是我在 nginx 配置中摆弄的东西,但没有取得多大成功(也尝试了客户端地址而不是 *)。

进行 RESTful 调用的 angularjs 服务方法

在角度配置函数中

这是当前配置,这是我遇到的结果。

浏览器控制台输出

Resource interpreted as Script but transferred with MIME type text/html: "http://domain-server.com/__getcookie".- 好的

|>
\___/ sails.io.js:200 io.socket connected successfully.
- 好的

XMLHttpRequest cannot load http://domain-server.com/login?password=test&username=test. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://domain.com' is therefore not allowed access.- 不好

更新

似乎一切正常,如果我直接使用开始航行,sails lift或者node app.js在使用.conf文件中的新贵脚本启动它时,会发生跨域问题。

新贵脚本

0 投票
0 回答
149 浏览

sails.js - 如何在服务器端存储套接字连接?

我将使用sails 设置基于socket.io 的Web 应用程序

问题是套接字连接总是在转发路由后重新建立。

例如 :

当我输入 /index 时,套接字连接良好。然后我单击 /news 的链接,我发现套接字已断开连接并重新连接。

我需要将连接存储在服务器端吗?任何建议或答案表示赞赏。

0 投票
2 回答
1508 浏览

node.js - 如何在sails 0.10.5中创建套接字连接

我正在尝试使用sailsjs 创建一个实时应用程序。我在 youtube 上看到了教程,在该网站上搜索了简单的解决方案。在 github 上搜索了简单的示例运行示例。我发现一些工作,但旧版本。无论我学到什么,发现我都试图在我的应用程序中实现。

那就是 sessionController.js

那就是 userController.js

那就是 app.js 来接收数据

问题很简单,当用户注册或注销或用户执行任何操作时,我都没有得到响应。我认为我正确地发布了操作,但不知道接收。如果有人能指出我正确的方向,那将非常有帮助。如果需要,我可以分享更多信息。
我将在github上分享这个。所以这将对其他人有充分的帮助。
谢谢。

0 投票
1 回答
732 浏览

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

我正在尝试使用socket.io-client.

我的航行服务app/services/Watcher.js看起来像

调用config/bootstrap.js方式如下:

在 Express 方面,我的服务器relay.js很简单:

当我node relay尽职尽责地运行它时

当我sails lift我的另一台服务器时,它尽职尽责地报告

但我从来没有看到真正的联系。

如果我将浏览器指向localhost:8000我会得到{"message":"some response"} JSON我期望的响应。

为什么我的中继服务器不接受来自我的 socker.io-client 应用程序的连接?

0 投票
1 回答
935 浏览

node.js - sailsJs,使用两个控制器时出错

在sails.Js 中,我如何使用具有两个模型的控制器?

就像,在我的页面中有一个参考<%= user.city%>,在另一个模型中,我有一个类似的列表:

{ street }, { state }, { house }

我该怎么做,<%= user.city.street%>在我的页面中使用?

信息:我有两个模型,“用户”和“信息”,列表在信息模型中。