Подтвердить что ты не робот

Dart Nodejs и Socketio

Каковы мои возможности для преобразования приложения socketio nodejs в dart? Есть ли поддержка для серверов nodejs, использующих дротик, каким-то образом (в идеале со всеми фантастическими возможностями отладки редактора dart)? Имеет ли socketio библиотеку на основе дротика?

4b9b3361

Ответ 1

Dart имеет VM на стороне сервера, так же как V8 имеет VM на стороне сервера в виде node.js.

Взгляните на Adam Smith образец чата веб-сервера, который использует веб-порты на стороне сервера для связи с веб-сайтами на стороне клиента, с обе части записаны в Дарт.

Основные части серверной части выглядят следующим образом:

import "dart:io";

main() {
  HttpServer server = new HttpServer();

  WebSocketHandler wsHandler = new WebSocketHandler();
  server.addRequestHandler((req) => req.path == "/ws", wsHandler.onRequest);

  wsHandler.onOpen = (WebSocketConnection conn) {
     conn.onMessage = (message) {
       print(message);
       conn.send("hello, this is the server");
     };
  };

  server.listen("127.0.0.1",8080);
}

Затем на клиенте что-то вроде

import "dart:html"; 
main() {
  var ws = new WebSocket("ws://127.0.0.1:8080/ws");
  ws.on.open.add( (a) {
    ws.send("hello, this is the client");
  });
  ws.on.message.add( (messsage) {
    print(message);
  });
}