【发布时间】:2020-06-15 00:40:05
【问题描述】:
我试图弄清楚如何通过 UDP/TCP 从我的颤振应用程序发送数据到我的服务器,该服务器具有侦听 UDP 和 TCP 的 .net 应用程序。我搜索了一下,发现有一个名为 web_socket_channel 的包,我尝试它与测试服务器 ws://echo.websocket.org 一起使用,但是当我用我的服务器 IP 地址替换 echo.websocket.org 或域名它不起作用,即使我没有收到任何错误,所以我无法弄清楚发生了什么。有什么不对?还是我做错了什么?有人可以帮助我的演示代码:
WebSocketChannel channel;
String text = "";
void sendSocket() {
String message = "message_text"
if(message.isNotEmpty)
channel.sink.add(message);
}
getStreamData() {
channel.stream.asBroadcastStream().listen((event) {
if (event != null)
print(event);
});
}
@override
void dispose() {
channel.sink.close();
super.dispose();
}
@override
void initState() {
try {
channel = IOWebSocketChannel.connect(
'ws://127.0.0.1:8889');
getStreamData();
super.initState();
} catch (e) {
print(e.toString());
}
}
感谢您的帮助。非常感谢。
【问题讨论】:
-
是的,只需使用
dart:ioSocket 或 RawDatagramSocket。由于它们在标准 io 包中,您甚至可以编写一个简单的 Dart 命令行应用程序来测试您的实现。 -
我这边出了问题。这就是它不起作用的原因。
标签: flutter websocket tcp udp flutter-packages