Web Application Messaging Protocol: Difference between revisions

Content deleted Content added
m linking
 
(3 intermediate revisions by 3 users not shown)
Line 58:
! Language
|-
| [https://github.com/voryx/angular-wamp AngularWAMP]
| [[JavaScript]] for the [[AngularJS]] framework
|-
| [https://github.com/tavendo/AutobahnCpp AutobahnCpp]
| [[C++]] 11
|-
| wamplv
| [https://github.com/samangh/wamplv wamplv]
| [[LabVIEW]] (G)
|-
| [https://github.com/crossbario/autobahn-js AutobahnJS]
| JavaScript ([[Web browser|browser]] and [[Node.js]])
|-
| [https://github.com/crossbario/autobahn-python AutobahnPython]
| [[Python (programming language)|Python]]
|-
| wampy
| [https://github.com/noisyboiler/wampy/ wampy]
| [[Python (programming language)|Python]]
|-
| [https://metacpan.org/pod/Net::WAMP Net::WAMP]
| [[Perl]]
|-
| [https://github.com/darrrk/backbone.wamp backbone.WAMP]
| JavaScript for the [[Backbone.js]] library
|-
| [https://github.com/ecorm/cppwamp CppWAMP]
| C++ 11
|-
| Erwa
| [https://github.com/bwegh/erwa Erwa]
| [[Erlang (programming language)|Erlang]]
|-
| Jawampa
| [https://github.com/Matthias247/jawampa Jawampa]
| [[Java (programming language)|Java]]
|-
| [| [https://github.com/KSDaemon/Loowy Loowy]
| [[Lua (programming language)|Lua]]
|-
| MDWamp
| [https://github.com/mogui/MDWamp MDWamp]
| [[Objective-C]]
|-
| Minion
| [https://github.com/Vinelab/minion Minion]
| [[PHP]]
|-
| rx.wamp
| [https://github.com/paulpdaniels/rx.wamp rx.wamp]
| JavaScript for the [[React (JavaScript library)|React]] library
|-
| [https://github.com/voryx/Thruway Thruway]
| PHP
|-
| [https://github.com/rafzi/WAMP_POCO WAMP POCO]
| C++
|-
| wampcc
| [https://github.com/darrenjs/wampcc wampcc]
| C++
|-
| [https://github.com/Code-Sharp/WampSharp WampSharp]
| [[C Sharp (programming language)|C#]]
|-
| [https://github.com/KSDaemon/wampy.js Wampy.js]
| JavaScript (browser only)
|-
| nexus
| [https://github.com/gammazero/nexus nexus]
| [[Go (programming language)|Go]]
|}
Line 126:
However, the persistent nature of WebSocket connections requires the use of non-blocking libraries and [[Asynchronous I/O|asynchronous]] [[Application programming interface|API]]s. In languages with one official mechanism such as JavaScript, Erlang or Go, this is not an issue. But for languages with several competing solutions for asynchronous programming, such as Python or PHP, it forces the client author to commit to a specific part of the ecosystem.
 
For the same reason, integrating legacy projects can also require work. As an example, most popular Web Python frameworks are using [[Web Server Gateway Interface|WSGI]], a synchronous API, and running a WAMP client inside a WSGI worker needs manual adapters such as [https://pypi.python.org/pypi/crochet crochet].
 
===Routers===
Line 139:
! Language
|-
| Bondy
| [https://docs.getbondy.io Bondy] {{Webarchive|url=https://web.archive.org/web/20191230232140/https://docs.getbondy.io/ |date=2019-12-30 }}
| [[Erlang (programming language)|Erlang]]
|-
| Crossbar.io
| [http://crossbar.io Crossbar.io] {{Webarchive|url=https://web.archive.org/web/20150112071519/http://crossbar.io/ |date=2015-01-12 }}
| Python (CPython and [[PyPy]])
|-
| Erwa
| [https://github.com/bwegh/erwa Erwa]
| Erlang
|-
| wampcc
| [https://github.com/darrenjs/wampcc wampcc]
| C++
|-
| Jawampa
| [https://github.com/Matthias247/jawampa Jawampa]
| Java
|-
| [https://github.com/voryx/Thruway Thruway]
| PHP
|-
| wamp.rt
| [https://www.npmjs.com/package/wamp.rt wamp.rt]
| JavaScript (Node.js only)
|-
| [https://github.com/Code-Sharp/WampSharp WampSharp]
| C#
|-
| Wiola
| [https://ksdaemon.github.io/wiola/ Wiola]
| [[Lua (programming language)|Lua]]
|-
| [https://github.com/christian-raedel/nightlife-rabbit Nightlife-Rabbit]
| JavaScript (Node.js only)
|-
| nexus
| [https://github.com/gammazero/nexus nexus]
| [[Go (programming language)|Go]]
|}
Line 247:
|
|-
| [https://capnproto.org/ Capn'n'Proto]
|
| {{ya}}
Line 351:
|
|-
| [https://github.com/sockjs SockJS]
|
|