问题标签 [xsockets.net]
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.
.net - Xsockets构造函数的依赖注入
我正在尝试使用 XSockets 来实现服务器,并且我想使用 DI 抽象 DB 层。
这就是我所拥有的:
这就是我想要的(为了能够在用作服务器的控制器上使用一些 DI):
问题是:我自己实际上并没有创建 FooController,当一些客户端尝试连接到它时,它会被调用。
这是启动服务器的典型用法:
如果我没记错的话(我很可能是这样),当客户端尝试连接时,他会获得自己的私有控制器作为服务器。
关于如何解决这个问题的任何想法?
asp.net-mvc-5 - 无法运行 XSocket WebRTC 示例 - vs2013
我正在尝试运行此处找到的 XSockets WebRTC 示例:http ://www.nuget.org/packages/xsockets.sample.webrtc
该软件包安装并显示 index.html,但是 websockets 服务器似乎没有启动。这似乎有效,因为我将 CustomBroker 重命名为 CustomBrokerController。
几点注意事项:
1.) 我正在运行 Visual Studio 2013,它似乎仅在 IIS Express 下自托管应用程序。根据应用程序自述文件,我应该在 Visual Studio 开发服务器下运行:
右键单击项目并选择属性。
在“Web”选项卡下,转到“Servers”部分并设置 Use Visual Studio Development Server
这是一个问题,如果是这样 - 如何解决它?
2.) index.html 包含这一行: conn = new XSockets.WebSocket('ws://127.0.0.1:4502/Broker');
WebRTCSample 文件夹下的控制器子文件夹中没有名为“Broker”的控制器。尽管远程和本地视频似乎可以正常工作,但我的断点都没有在 CustomBroker 控制器上受到影响。现在我注意到控制器文件夹下的 CustomBroker 类没有像“CustomBrokerController”中那样连接到“控制器”名称。我将它从“CustomBroker”重命名为“CustomBrokerController”,现在我正在打断点,但是在客户端 index.html 页面上,如果我打开两个单独的窗口并传递与查询字符串相同的上下文,远程视频部分不会显示。奇怪的是,从客户端的控制台,
3.) 我为每个自述文件添加了一个 XSocketsBootstrapper。我按照说明将此文件添加到 App_Start 文件夹中。
更新:
我创建了一个新项目并使用库管理器添加了 XSockets.WebRTC 文件。我点击 home 控制器来调用 BootStrapper 并触发断点。在我将名称从 Broker 更改为 CustomBroker 后,它还击中了 CustomBroker 的断点。现在,在我刷新 index.html 页面后,CustomBroker 不会调用任何断点。这应该发生吗?我认为当在 javascript 中达到这一行时, peerBroker = new XSockets.WebSocket("ws://127.0.0.1:4502/CustomBroker"); 控制器事件会触发。我错过了什么吗?
signalr - SignalR 真的向所有连接的客户端广播每条消息吗?
我们目前正在评估实现服务器发送事件的解决方案(不一定使用服务器发送事件事件源传输)。
我们的用例实际上与 Stackoverflow 非常相似。我们有一个定制的 CMS 实现为支持协作编辑的 SPA。作为第一步,我们希望服务器在另一个用户修改它时通知同一页面上的所有客户端。
显而易见的选择是为此选择 SignalR,但XSockets 比较页面上的这个声明让我想到:
如果一个框架向所有连接的客户端广播数据,我们刚刚反转了 AJAX 问题,现在我们有一个服务器用他们不想要的信息锤击客户端。
SignalR 2 仍然如此吗?我的意思是,无论组成员身份如何,都不会向所有客户广播会使组一开始就完全没用吗?
一些统计数据:
- > 10000 活跃用户
- > 10000 页
asp.net-mvc-5 - 带有 XSockets 的 WebRTC 安全选项
如果我按照此页面“ http://xsockets.net/docs/installing-xsocketsnet ”中概述的示例,并将控制器作为自托管应用程序安装在与托管网站的 Web 服务器不同的服务器上,该网站将与 XSocket 通信控制器,我如何确保只有来自我网站的经过身份验证的用户才能访问 XSocket 控制器。
我是 XSockets 架构的新手,这让我很困惑。peerBroker = new XSockets.WebSocket("ws://127.0.0.1:4502/CustomBroker");
当在 JavaScript中调用这行代码时,似乎我需要将一些登录凭据传递给控制器。我还没有找到任何说明如何将这些信息安全地提供给控制器的文档。作为后台,网站端运行的是MVC5。
主要的混淆点是代理与将访问代理的 mvc5 应用程序位于不同的服务器上。我试图确保代理只允许当前登录系统的用户访问代理。
iis - 配置 XSockets 以使用握手端口
据我了解,WebSockets 旨在穿越防火墙和代理。实际上,在客户端和服务器之间握手之后,通信协议将从 HTTP 更改为 WS,但它仍将在用于建立握手的端口上进行通信。(见websocket.org)。
换句话说,如果客户端可以在给定端口上进行 HTTP 请求,那么他也可以在同一端口上进行 WS。
但是,根据XSockets 配置文档,用于 WS 通信的端口与 HTTP 端口不同。与常规的 WS 连接不同,防火墙上的 NAT 似乎需要允许 XSockets 服务器和客户端之间的通信。
有没有办法配置 XSockets 服务器以重新使用用于握手的 HTTP 端口(端口 80),而不会与托管在同一 Web 服务器 (IIS) 上的现有 Web 应用程序产生冲突?
c# - 有没有办法从另一个服务器上的另一个 c# 控制器而不是 javascript 将会话变量添加到 xsockets?
我在下面的文章Persistence between connections/sessions中找到了允许我在会话之间保持信息的 JavaScript 代码。
有没有办法从 c# 客户端 api 实现这一点?
另外,有没有办法确定哪个会话与最初创建聊天会话的人相关联?
asp.net-mvc-4 - 使用 Knockout.js 更新 MVC 模型列表
我正在开发一个通过 WCF 连接到 XSockets并且能够在客户端获取数据的应用程序。我想使用Grid.Mvc显示这些数据,并且已经看到了使用 knockout.js 的示例,但我不确定如何将其推送到我的 IEnumerable 模型中,以便我可以看到更新的视图。
我尝试使用以下代码
我总是收到 BooksRead JsonResult 方法中参数的空值。
模型很简单
我在加载时从家庭控制器返回一个 BookModel IEnumerable 作为我的模型,并希望在我在套接字绑定中收到新书时将它们插入其中。这是因为我正在使用它来生成网格。
我将不胜感激有关如何实现这一目标的任何指示和指导。非常感谢
更新
从 ajax 调用中删除 dataType 和 contentType 参数后,我现在能够在控制器操作方法中获取值。控制器方法如下
我在成功处理程序中添加了一个 vm.push 调用并将结果值传递给它,但它似乎仍然没有在模型中添加新书。看来我做错了,因为我是淘汰 js、jquery 和 ajax 的新手,并试图在我前进的过程中学习,所以请原谅我的无知
更新 2
我还做了一些更改。就像 Uffe 说的,我删除了 Ajax 调用。我正在将 StockTicker 示例中的 StockViewModel 调整为我的 BookViewModel,并向 ctor 添加了一个参数以接收我的 IEnumerable 模型。这有效并添加了该项目。AddOrUpdate 也可以正常工作,并且对象已添加到集合中,但是如何才能在网格中更新我的模型。
视图模型如下
};
c# - 较低级别的 XSockets 的 '.Bind()' 是什么
我有以下使用XSockets库的 C# 代码:
现在我正在尝试使用WebSocket包将此代码移植到 Python 2.7:
我的问题是,WebSocket 包没有提供这样的“.Bind()”方法。我所拥有的一切都是 onmessage-, onerror-callbacks。现在我正在考虑自己实现这个绑定,但我真的不知道 XSockets 是如何在内部实现这个的。有没有关于它的规范?XSockets-Server 是否通过另一个 URL 发送此消息,例如ws://awebsocket.org:4502/Controller/messages或ws://awebsocket.org:4502/Controller?messages?
asp.net - XSockets 自定义控制器未注册
您好,我正在注册这个自定义 XSockets 控制器,但我不断收到错误消息“ {"event":"0x1f4","data":"{\"CustomMessage\":\"The handler name was not found in loaded plugins\",\"Type\":\"XSocketException\",\"Message\":\"\"}"}
”
是我的控制器,这是我在 Web.Config 文件中的配置
我不知道将控制器放在哪里,所以我把它放在它自己的文件夹中,它位于名为 XControllers 的根目录中,但我也尝试将它放在 App_Code 和 bin 文件夹中
从配置的外观来看,它看起来像是在寻找一个 .dll 文件,但我的控制器是一个 .cs 文件。
我需要编译这个吗?
XSockets 自定义控制器配置要么没有很好的文档记录,要么没有很好地呈现:(
c# - XSockets 在 GetExport 上抛出 InvalidOperationException
我遇到了一个奇怪的问题。我有完全相同的代码。在一台机器上,它可以完美运行。另一方面,它 在GetExport<IXSocketServerContainer>上引发InvalidOperationException
违规行是:
这是异常的屏幕截图:screenshot。
有任何想法吗?
我能想到的唯一区别是一台机器是Win 8,另一台机器是Win 7。
更多细节:采用有效的解决方案(win 8),按原样复制到其他机器(win 7),清理所有包,重新安装所有 nuget 依赖项,检查所有项目添加或重新导入依赖项,现在仍在工作(在 win 7 机器),尽管该项目将毫无错误地构建。
将那个不工作(但正在编译)的项目带回第一台机器,它也不能在该机器上工作。完全没有想法。