2012-07-15 90 views
13

將socketio nodejs應用程序轉換爲dart的選項有哪些?是否支持使用dart的nodejs服務器(理想情況下具有dart編輯器的所有奇特調試功能)? socketio是否有基於飛鏢的圖書館?Dart Nodejs和Socketio

+0

嘗試SocketIO的飛鏢來港:https://github.com/岩石/風管 – 2012-07-18 16:09:16

+0

在這個答案中,SocketIO的Dart端口的正確URL是http://stackoverflow.com/a/15647977/301740 – 2013-12-08 14:51:53

回答

16

Dart有一個服務器端VM,就像V8有一個node.js形式的服務器端VM。

看看Adam Smith的webserver chat sample,它使用服務器端的websockets與客戶端的websockets進行通信,這兩個部分都是用Dart編寫的。

服務器端模樣的關鍵部分:

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); 
    }); 
} 
+3

正是我在找的東西。所以沒有特色的套接字庫用於具備後備功能的飛鏢?任何對項目感興趣的人? – Dested 2012-07-15 20:17:24

+0

我認爲在dart中有一個websocket項目,你不會找不到一些感興趣的開發者。 – Gero 2012-07-17 20:09:39