如何让webmachine和websockets一起玩呢?

问题描述:

Webmachine似乎是构建REST Web服务的好系统,但我知道它不提供WebSocket兼容性。我的问题很简单:在webmachine构建的web服务之上添加websocket功能的好方法是什么?如何让webmachine和websockets一起玩呢?

我正在运行Misultin以及Webmachine。

+0

非常感谢您的建议,它看起来不错!对于这些记录,谷歌代码上的项目已停止,但开发仍在[github](https://github.com/ostinelli/misultin)上进行。 – matehat

+0

固定链接,谢谢!我应该检查我的螺纹钢锭:) –

+3

也最新的提交可以处理最新版本的websockets。 – rvirding

为了在webmachine中简单使用websockets,我通过更改webmachine源(添加支持mochiweb_websockets)和mochiweb(添加支持安全websockets)来实现该功能。

您可以通过以下链接从git的完整解决方案(webmachine使用WebSockets支持)下载: https://github.com/Dryymoon/webmachine.git
并通过解决这个链接用法示例。

或者,如果想深入一点: 我改变只有两个文件的来源:
1)webmachine_decision_core.erl改变(增加支持的WebSocket处理器)。
2)mochiweb_websocket.erl(添加支持安全websockets和patch existig)。

晚回答,只是偶然发现了这一点,但另一种选择是运行SimpleBridge(https://github.com/nitrogen/simple_bridge),它增加了一个抽象层(使用webmachines路由系统有条件地绕过),其中增加WebSocket的支持,它支持任何Erlang的Web服务器(包括webmachine )。