netty-demo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
1.9 KiB

13 years ago
13 years ago
13 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
14 years ago
  1. #Overview
  2. This project is an open-source Java implementation of [Socket.IO](http://socket.io/) server. Based on [Netty](http://netty.io/) server framework.
  3. Required JDK 1.5 (or above).
  4. Licensed under the Apache License 2.0.
  5. ### Features
  6. * Supports 0.8+ version of [Socket.IO-client](https://github.com/LearnBoost/socket.io-client) up to latest - 0.9.5
  7. * Supports xhr-polling transport
  8. #Usage example
  9. ##Server
  10. SocketIOListener handler = new SocketIOListener() {
  11. @Override
  12. public void onMessage(SocketIOClient client, String message) {
  13. ...
  14. }
  15. @Override
  16. public void onDisconnect(SocketIOClient client) {
  17. ...
  18. }
  19. @Override
  20. public void onConnect(final SocketIOClient client) {
  21. ...
  22. }
  23. @Override
  24. public void onJsonObject(SocketIOClient client, Object obj) {
  25. ...
  26. SampleObject obj = new SampleObject();
  27. // send object to socket.io client
  28. client.sendJsonObject(obj);
  29. }
  30. };
  31. SocketIOServer server = new SocketIOServer();
  32. server.setHostname("localhost");
  33. server.setPort(81);
  34. server.setHeartbeatThreadPoolSize(8);
  35. server.setWorkerThreadPoolSize(8);
  36. server.setBossThreadPoolSize(4);
  37. server.setListener(handler);
  38. server.start();
  39. ...
  40. server.stop();
  41. ##Client
  42. <script type="text/javascript" src="socket.io.js" charset="utf-8"></script>
  43. <script type="text/javascript">
  44. var socket = io.connect('http://localhost:81', {
  45. 'transports' : [ 'xhr-polling' ],
  46. 'reconnection delay' : 2000,
  47. 'force new connection' : true
  48. });
  49. socket.on('message', function(data) {
  50. // here is your handler on messages from server
  51. });
  52. // send json-object to server
  53. var obj = ...
  54. socket.json.send(obj);
  55. </script>