Orbited

浏览器间的实时通讯框架
授权协议 MIT
开发语言 Python JavaScript
所属分类 程序开发、 其他开发相关
软件类型 开源软件
地区 不详
投 递 者 督翰学
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Orbited 提供一个纯 JavaScript 和 HTML 的浏览器 Socket 通讯包,你可以把它看成是web的路由器和防火墙,允许你的web应用和后端的系统进行通讯,在这基础上你可以实现任何的网络通信协议。

要使用 Oribited 当然还需要一个服务器端,这是用 Python 开发的一个服务程序,用来处理来自浏览器之间的通讯请求。点击这里查看在 Windows 下的安装方法。

这里有一个使用 Oribited 搭建的Web聊天室的在线演示

体系结构图:

一段示例代码:

<script type="text/JavaScript">
Orbited.settings.port = 9000;
amqp_broker_port = 7000;

amqp_conn = amqp.Connection({host: 'localhost',
port: amqp_broker_port,
send_hook: function(msg) { // for debugging
append_msg('SENT', msg);
},
recive_hook: function(data) { // for debugging
append_msg('RECV', data);
}
});
amqp_conn.start();

// You should have your server generate a UUID since browser methods
// are unreliable at best
session = amqp_conn.create_session('not_a_great_id' + (new Date().getTime() + Math.random()));

var fedoraproject = "org.fedoraproject-" + session.name;
session.Queue('declare', {queue:fedoraproject, exclusive:true});
session.Exchange('bind', {exchange: "amq.topic",
queue: fedoraproject,
binding_key: "org.fedoraproject.#"});

// Bind each queue to the control queue so we know when to stop
session.Exchange('bind', {exchange:"amq.topic",
queue: fedoraproject,
binding_key:"control"});
</script>
  • 弄了整整两天 终于跑起来了 记录一下...   ubuntu10.04   首先是apache 要安装worker-mpm的才行 可以重新编译apache 我用源安装的 方法网上搜下就有了 不多写 要注意的一点就是用fcgi跑php的时候 要在站点设置里指定.php文件的处理器   然后就开始弄orbited了 当然找官网教程里的例子了 先说下orbited的安装吧 首先安装easy_instal

  • Installing Orbited on Windows ¶ Orbited is written in Python and requires Python 2.5 or newer (for a workaround for <2.5, see ticket #24 and this discussion). Orbited also requires Twisted, which it i

  • 对这篇文章的补充 [url]http://fuglyatblogging.wordpress.com/2008/10/08/http-push-aka-comet-with-orbited-and-rails/[/url] 首先是配置的问题 APP_SETTINGS[:orbited_host] = 'localhost' APP_SETTINGS[:orbited_port] = '8500'

 相关资料
  • 问题内容: 浏览器是否内置了超时功能,如果可以,它们是什么? 我有一个页面,该页面在最多运行5分钟的进程上执行AJAX调用。有人说浏览器在2分钟后超时,但不知道这有什么道理。 问题答案: 它取决于浏览器。“默认情况下,InternetExplorer的KeepAliveTimeout值为一分钟,其他限制因素(ServerInfoTimeout)为两分钟。这两种设置都会导致InternetExplo

  • 问题内容: 在同一浏览器的选项卡/窗口之间进行JavaScript通信的最可靠方法是什么?例如,当选项卡2开始播放音频时,选项卡1以某种方式知道这一点并可以暂停其播放器。 我正在建立一个带有音乐播放器的网站…因此,如果您现在打开该网站的两个标签,则可以同时在两者上播放音乐。这显然是不好的,所以我正在尝试寻找解决方案。 有任何想法吗?谢谢 问题答案: 这是一个旧的答案,我建议使用此处描述的现代版本:

  • MATLAB工作空间包含内建MATLAB处理任务时以及储存在记忆体中的变量排列。你可以通过使用函数、运行M-文件、装载已存文件等方式增加变量到工作区。 要查看关于每个变量的工作空间和信息,请用工作空间浏览器,或用who和whos函数。 要在工作空间删除一个变量,先选择那个变量,然后从Edit菜单中选择Delete,或者用clear命令。 当你退出MATLAB后,工作空间的内容是不会继续存在的。如果

  • 问题内容: 为了澄清当我询问浏览器到浏览器的通信时,我的意思是在转发消息之间没有服务器。我想为游戏实现这样的功能。如果无法在websockets中使用p2p,是否有类似的选择?任何帮助表示赞赏。 问题答案: 否。浏览器只能启动WebSockets连接,不能接收它们。在W3C的浏览器API规范只定义了如何启动出站连接。 您可以创建一个既可以启动也可以接受WebSockets连接的应用程序,但是浏览器

  • 本文向大家介绍如何实现浏览器内多个标签页之间的通信?相关面试题,主要包含被问及如何实现浏览器内多个标签页之间的通信?时的应答技巧和注意事项,需要的朋友参考一下 通过WebSocket或SharedWorker把客户端和服务器端建立socket连接,从而实现通信;也可以调用localstorge、cookies等本地存储方法  

  • vue响应式 diff vuex pinia nextTick webpack打包流程 性能调优配置 插件tabable库 pnpm 前端监控 异步错误捕获 ts泛型(寄) http缓存 https 算法:①求某时刻时针和分针的夹角(度数相减) ②类似vue模版编译 (正则)